angular - 标题中出现错误“访问控制允许来源”
问题描述
在我的 Angular 应用程序中,当我需要通过基本身份验证从我的 API 进行 GET 调用时,我在我的 JS 控制台中收到此错误:
从源“ http://localhost:4200 ”访问“*********”处的 XMLHttpRequest已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:没有“访问控制” -Allow-Origin' 标头出现在请求的资源上。
如果我尝试使用 Postman,则相同的呼叫没有任何问题。我该如何解决?这是我的代码:
export class DataService {
constructor(private http: HttpClient) { }
private postsURL = "********";
getData(){
const httpOptions = {
headers: new HttpHeaders({
'Access-Control-Allow-Origin': '*',
'Access-Control-Expose-Headers': 'Content-Length,X-Foo,X-Bar',
'Content-Type': 'application/json',
'Authorization': 'Basic ' + btoa('*****:*****')
})
};
return this.http.get(this.postsURL, httpOptions);
}
}
解决方案
CORS 标头应在服务器端设置。要解决您的问题,您可以设置代理。看看角度文档
推荐阅读
- firebase - Flutter firebase 流重启崩溃
- c# - 如何优化迭代多个列表并稍后将它们添加到 C# 中的字典的函数的执行时间?
- php - 如何将登录页面设置为第一页 laravel 8
- flutter - MaterialApp 中的主题在小部件 Flutter 中不起作用
- python - Docker-当我使用绑定挂载运行 docker 容器时如何在本地保存文件?
- jquery - 为什么 jsonData 未定义,但仅在将其解析为 .text 时
- java - Quarkus JPA SQL 结果集映射
- flutter - Flutter / Dart 避免使用不必要的语句
- stripe-payments - 使用 Stripe Checkout 防止重复订阅
- rust - Rust:将流读入缓冲区直到它“完成”