在WCF服务上启用CORS。获取HTTP 405:不允许的方法

时间:2014-03-20 20:45:09

标签: c# jquery wcf iis cors

我正在尝试在WCF服务上启用CORS。当我尝试从客户端发送请求时,请求使用OPTIONS动词发送。我总是收到HTTP 405: Method not allowed错误

如果我尝试使用Fiddler并使用POST动词创建相同的请求,则响应似乎是正确的。

我尝试在本教程的帮助下删除webDAV http://brockallen.com/2012/10/18/cors-iis-and-webdav/但似乎没有效果。

我已更新我的WCF以启用CORS,参考教程http://enable-cors.org/server_wcf.html。我不确定出了什么问题。响应似乎有CORS标题

enter image description here

任何帮助都将受到高度赞赏。

PS:我不想让这个问题变得非常大和令人困惑。如果您想查看我的配置,请告诉我,我可以分享它

1 个答案:

答案 0 :(得分:4)

点击此链接http://praneeth4victory.wordpress.com/2011/09/29/405-method-not-allowed/

protected void Application_BeginRequest(object sender, EventArgs e)
{
          HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
          if (HttpContext.Current.Request.HttpMethod == "OPTIONS")
{
               HttpContext.Current.Response.AddHeader("Cache-Control", "no-cache");
               HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST");
               HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept");
               HttpContext.Current.Response.AddHeader("Access-Control-Max-Age", "1728000");
               HttpContext.Current.Response.End();
              }
}