如何修复 Angular 1 + ajax + CORS 策略上的 No 'Access-Control-Allow-Origin' 标头? [复制]

Posted

技术标签:

【中文标题】如何修复 Angular 1 + ajax + CORS 策略上的 No \'Access-Control-Allow-Origin\' 标头? [复制]【英文标题】:How to fix No 'Access-Control-Allow-Origin' header on angular 1 + ajax + CORS policy? [duplicate]如何修复 Angular 1 + ajax + CORS 策略上的 No 'Access-Control-Allow-Origin' 标头? [复制] 【发布时间】:2019-08-23 01:39:27 【问题描述】:

我不知道如何解决我的代码中的这个问题。 我的代码如下:

$http(
            method: 'POST',
            url: "http://urlexample.com.br",
            headers :                                         
                "Content-Type": "application/x-www-form-urlencoded;charset=utf-8;",                   
                "Access-Control-Allow-Origin": "*",
                "Access-Control-Allow-Headers" : "X-Custom-Header",
                "Access-Control-Allow-Credentials": true,            
                "Access-Control-Allow-Methods": "POST",
                "Accept" : "application/x-www-form-urlencoded;charset=utf-8;"
            ,                
            data: 
                "username": login,
                "password": senha
            
        ).then(function (success) 
            callback(success);
        , function (error) 
            errorCallback(error);
        );

错误是这样的:

“已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。”

谢谢。

【问题讨论】:

http://urlexample.com.br URL 应该使用在"Access-Control-Allow-Origin": "*" 中设置的 HTTP 响应标头进行响应。 urlexample.com.br是API的地址。 【参考方案1】:

您收到此错误是因为您正在调用位于不同域中的 API,这是 CORS(跨域资源共享)策略所阻止的,除非您允许从其他域访问您的 API。

您可以通过在后端安装一个包来解决此错误(如果您使用的是 laravel,则为 laravel-cors),这取决于您使用的技术。

看看这个问题,它们将帮助你理解和解决问题

AngularJS performs an OPTIONS HTTP request for a cross-origin resource

CORS: Cannot use wildcard in Access-Control-Allow-Origin when credentials flag is true

【讨论】:

以上是关于如何修复 Angular 1 + ajax + CORS 策略上的 No 'Access-Control-Allow-Origin' 标头? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何修复:“@angular/fire”'没有导出成员 'AngularFireModule'.ts(2305) ionic、firebase、angular

如何修复“找不到模块'@angular-devkit/schematics'”

在Angular中将项目从v10迁移到v12后如何修复错误[关闭]

如何从 Ionic 5 中的@ionic/angular 错误修复成员事件

在Angular中更改页面时如何修复yyyy不是功能?

angular中如何设置全局的ajax请求?