程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了AngularJS $ http从失败的CORS请求返回状态代码0大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决AngularJS $ http从失败的CORS请求返回状态代码0?

开发过程中遇到AngularJS $ http从失败的CORS请求返回状态代码0的问题如何解决?下面主要结合日常开发的经验,给出你关于AngularJS $ http从失败的CORS请求返回状态代码0的解决方法建议,希望对你解决AngularJS $ http从失败的CORS请求返回状态代码0有所启发或帮助;

我想我找到了答案,样子你会在你的asp.net管道注入正确的CORS头,提到这里。

解决方法

好的,我已经到处寻找了。基本上,我们使用的是跨域请求的$
http请求。我们的服务器允许该域,当请求返回200时,一切正常。但是,无论何时我们的服务器返回错误500、401,无论如何,Angular都认为这是CORS问题。

我用Fiddler调试了响应,以验证服务器是否返回了500,但Angular阻塞了。

这是请求:

       var params = {
            url: "fakehost/example",method: 'GET',headers: {
                "Authorization": "Basic encodedAuthExample"
            }
        };

       $http(params).then(
            function (responsE) { // success

            },function (error) { // error 
                 // error.status is always 0,never includes data error msg
            });

然后在控制台中,我将看到:

XMLhttprequest无法加载fakehost / example。所请求的资源上没有“ Access-Control-Allow-
Origin”标头。因此,不允许访问源“ mylocalhost:5750”。

然而,在提琴手中,真正的回应是:

http/1.1 500 Internal Server Error
Cache-Control: no-cache
Pragma: no-cache
Content-Type: application/json; charset=utf-8
Expires: -1
Server: Microsoft-IIS/7.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Tue,26 Aug 2014 12:18:17 GMT
Content-Length: 5683

{"errorId":null,"errormessage":"Index was outside the bounds of the array.","errorDescription":"Stack trace here"}

我正在使用AngularJS v1.2.16

大佬总结

以上是大佬教程为你收集整理的AngularJS $ http从失败的CORS请求返回状态代码0全部内容,希望文章能够帮你解决AngularJS $ http从失败的CORS请求返回状态代码0所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。