has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested rasourct
时间: 2023-11-21 14:59:15 浏览: 65
解决方案 ‘Access-Control-Allow-Origin’ header in the response must not be the wildcard ‘*’
5星 · 资源好评率100%
CORS(跨源资源共享)是一种安全机制,用于限制从一个源加载的Web应用程序如何与来自不同源的资源进行交互。当浏览器尝试从一个源(域,协议或端口)加载资源时,如果该资源的响应头中没有包含“Access-Control-Allow-Origin”字段,则浏览器会阻止该资源的加载,并显示“has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource”错误消息。
解决此问题的方法有以下几种:
1.在服务器端添加响应头“Access-Control-Allow-Origin:*”,允许所有来源访问资源。例如,在Node.js中,可以使用以下代码添加响应头:
```javascript
res.setHeader('Access-Control-Allow-Origin', '*');
```
2.在服务器端添加响应头“Access-Control-Allow-Origin:具体的来源”,允许特定来源访问资源。例如,在Node.js中,可以使用以下代码添加响应头:
```javascript
res.setHeader('Access-Control-Allow-Origin', 'http://example.com');
```
3.使用代理服务器来解决CORS问题。例如,可以使用nginx作为代理服务器,将请求转发到目标服务器,并在nginx中添加响应头“Access-Control-Allow-Origin”。
阅读全文