微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 为什么我不能在HTTP响应头中设置“允许”?

我使用ASP.NET Web Api编写了一个RESTful API.现在我试图让它返回一个控制器允许的动词.我试图使用以下代码
[AcceptVerbs("OPTIONS")]
public HttpResponseMessage Options()
{
    var response = new HttpResponseMessage(HttpStatusCode.OK);
    response.Headers.Add("Access-Control-Allow-Origin","*");
    response.Headers.Add("Access-Control-Allow-Methods","POST");
    response.Headers.Add("Allow","POST");

    return response;
}

但是,我没有在我的回复中得到一个允许标题,我收到一个500内部服务器错误.调试时收到以下错误

{"Misused header name. Make sure request headers are used with HttpRequestMessage,response headers with HttpResponseMessage,and content headers with HttpContent objects."}

是否可以设置该标题

解决方法

正如错误消息所述,您必须使用HttpContent对象的内容文件.
response.Content.Headers.Add("Allow","POST");

必须承认这是一个奇怪的API …

原文地址:https://www.jb51.cc/csharp/92328.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐