来自Angular的Cross origin post请求被ASP Web API阻止

时间:2016-10-27 06:09:18

标签: angularjs asp.net-mvc asp.net-web-api cors

我的角色$http的帖子请求在IIS上失败了,所以我进行了配置更改,以允许任何带有预检超时的标头,方法和原点达到10分钟。预检请求仍然失败。有什么想法发生在这里吗?

有角度的帖子请求:

     return $http({
                method: 'POST',
                url: Constants.BASE_URL_WEB_API + '/urlToAction',
                data: JSON.stringify(postData),
                headers: { 'Content-Type': 'application/json' }
            });

在web.config Web API上:

<httpProtocol>
  <customHeaders>
    <add name="Access-Control-Allow-Origin" value="*" />
    <add name="Access-Control-Allow-Methods" value="*" /> <!-- GET, PUT, POST, DELETE, HEAD, OPTIONS -->
    <add name="Access-Control-Max-Age" value="600"/>
    <add name="Access-Control-Allow-Headers" value="*" />
  </customHeaders>
</httpProtocol>

Requet摘要 - FF开发者工具

enter image description here

2 个答案:

答案 0 :(得分:1)

这不是你的前端的问题。 检查API配置,以及您正在使用的浏览器。

答案 1 :(得分:0)

WebApiConfig课程中添加以下内容:

 public static void Register(HttpConfiguration config)
    {
           config.EnableCors();


        config.MapHttpAttributeRoutes();
       // Web API routes below
    }