CORS方法参数似乎不起作用?

时间:2015-02-24 19:47:58

标签: cors asp.net-web-api

我在ASP.NET Web API项目中启用了CORS。目前,它设置为仅允许通过我的客户端应用程序进行访问,如下所示:

[EnableCorsAttribute("http://localhost:44051", "*","post")]
public class ProductsController : ApiController

但是,这也允许GET请求。我认为通过指定" post"作为最后一个参数,只允许跨越原始的POST请求。

知道这里有什么问题吗?

1 个答案:

答案 0 :(得分:0)

启用所有域

  1. [EnableCors(起源:“”,标题:“”,方法:“*”)]
  2. 设置允许的HTTP方法

    [EnableCors]属性的methods参数指定允许哪些HTTP方法访问资源。要允许所有方法,请使用通配符值“*”。以下示例仅允许GET和POST请求。

    [EnableCors(origins: "http://www.example.com", headers: "*", methods: "get,post")]
    public class TestController : ApiController
    {
        public HttpResponseMessage Get() { ... }
        public HttpResponseMessage Post() { ... }
        public HttpResponseMessage Put() { ... }    
    }
    

    http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api