Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Return HttpStatusCode in the Response

Tags:

nancy

Is there a easy way to return just a HttpStatusCode for my api? I've found a slightly more verbose way to do this

return Response.AsJson(new object(), HttpStatusCode.NoContent);

I've taken a look at the Response class's source code and I see

 public static implicit operator Response(HttpStatusCode statusCode) { ... }

Is this what I'm looking for? If so how do I use it, what I'd really like would be able to do is

return Response(HttpStatusCode.NoContent);
like image 936
Chad Wilkin Avatar asked Oct 11 '13 19:10

Chad Wilkin


1 Answers

You can just directly return a HttpStatusCode from your action:

Get["/hello/"] = parameters => {
    return HttpStatusCode.NoContent;
};

From the documentation:

The Response object declares several implicit cast operators which enables an action to also return, instead of a Response object, any of the following

  1. int which will be interpreted as a HTTP status code of the response
  2. HttpStatusCode enumerable value
  3. string which will be interpreted as the body of the response
  4. Action<Stream> which is a function that writes to the response stream
like image 199
nemesv Avatar answered Dec 03 '22 04:12

nemesv