angular.js ajax对ASP.NET Web API的post请求给出了net :: ERR_CONNECTION_RESET

时间:2017-06-03 19:43:25

标签: c# angularjs ajax asp.net-web-api cors

我需要一些帮助。我有一个angular.js前端应用程序,可以与存储在Azure中的远程ASP.NET Web API一起使用。目前我正在开发另一个我在本地存储的ASP.NET Web API。当我尝试从客户端角度应用程序登录时,我收到以下错误:

angular.js:11028 POST http://localhost:57693/Token net::ERR_CONNECTION_RESET

经过不断的研究,我发现这个错误的原因可能是HTTP访问控制(CORS),因为客户端的应用程序域是http://localhost:62071而服务器的应用程序域是http://localhost:57693。 因此,我尝试了几种不同的方法来修复此错误,但没有成功:

  1. 我在Chrome浏览器中添加了一个CORS插件但没有结果

  2. 我已将以下代码添加到asp.net web api项目中的web.config文件中,但又没有结果:

  3.     <system.webServer>
        <httpProtocol>
          <customHeaders>
            <!--<clear />-->
            <add name="Access-Control-Allow-Credentials" value="true"/>
            <add name="Access-Control-Allow-Origin" value="*"/>
            <add name="Access-Control-Allow-Headers" value="*" />
            <add name="Access-Control-Allow-Methods" value="*"/>
          </customHeaders>
        </httpProtocol>
        .................
    
    1. 我还将此代码添加到WebApiConfig.cs文件中:

      config.EnableCors(new EnableCorsAttribute(origins: "*", headers: "*", methods: "*"));
      
    2. ...以及Startup类的此属性,该类在StartUp.Auth.cs文件中声明:

      [EnableCors(origins: "*", headers: "*", methods: "*", SupportsCredentials = true)]
      

      ......但又没有成功。

      我也尝试了不同组合的方法 - 单独使用或与其他组合使用,我收到同样的错误。

      如果有人知道如何解决此错误,请与我分享您的解决方案,因为在这种情况下我无法继续处理此项目!

0 个答案:

没有答案