18

有没有一种简单的方法可以只为我的 api 返回一个 HttpStatusCode?我找到了一种稍微冗长的方法来做到这一点

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

我看了一下Response类的源代码,我看到了

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

这就是我要找的吗?如果是这样,我该如何使用它,我真正想做的是

return Response(HttpStatusCode.NoContent);
4

1 回答 1

28

您可以直接HttpStatusCode从您的操作中返回 a :

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

文档中:

Response对象声明了几个隐式强制转换运算符,这些运算符使一个动作也可以返回,而不是一个Response对象,以下任何一个

  1. int这将被解释为响应的 HTTP 状态代码
  2. HttpStatusCode可枚举值
  3. string这将被解释为响应的主体
  4. Action<Stream>这是一个写入响应流的函数
于 2013-10-11T19:51:13.070 回答