Access to XMLHttpRequest at 'http://219.146.137.226:25902/proxyApi/sys/menu/fs?t=1689124676958' from origin 'http://localhost' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
时间: 2024-04-19 18:29:10 浏览: 107
根据你提供的错误信息,可以看出目标服务器并没有正确地处理跨域请求。在这种情况下,你可以尝试进行以下调整:
1. 确保之前提到的Nginx配置中已经添加了正确的跨域头部。验证一下配置文件是否正确地添加了以下行:
```nginx
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
```
2. 检查目标服务器上的应用程序代码,确保在处理请求时正确地设置了跨域头部。这通常涉及到在请求处理的代码中添加类似以下的响应头部设置:
```javascript
response.setHeader('Access-Control-Allow-Origin', '*');
response.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS');
response.setHeader('Access-Control-Allow-Headers', 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range');
```
请注意,以上示例是基于Node.js和Express框架的代码。如果你使用其他后端语言和框架,请参考相关文档以了解如何正确设置跨域头部。
3. 确保目标服务器上的防火墙或安全组规则没有阻止来自本地开发环境(如`http://localhost`)的请求。
如果上述步骤都已经尝试并且问题仍然存在,可能需要进一步检查目标服务器的日志和网络配置,以确定是否有其他原因导致跨域问题。
阅读全文