Access to XMLHttpRequest at 'http://39.105.36.172:9250/openapi/agitool/operate/shortcutKeywords' from origin 'http://localhost:63343' 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.
时间: 2023-07-24 15:51:51 浏览: 101
这个错误是由于浏览器的同源策略(Same-Origin Policy)导致的。当你的前端应用程序试图从一个与自己不同源(协议、域名、端口号有任何一个不同)的服务器端点请求数据时,浏览器会发送一个预检请求(preflight request),以确定服务器是否允许跨域请求。如果服务器没有正确配置 CORS,就会返回上述错误。
要解决这个问题,你需要在服务器端添加响应头信息,启用 CORS。在你的情况下,服务器端点的响应需要包含 `Access-Control-Allow-Origin` 头信息,值为前端应用程序的域名或 `*`(表示允许所有域名跨域请求)。例如,可以在服务端添加以下代码:
```java
response.setHeader("Access-Control-Allow-Origin", "*");
```
请注意,如果你的请求还包含其他自定义头信息,例如 `Authorization`,则服务器端点的响应还需要包含 `Access-Control-Allow-Headers` 头信息,以允许这些头信息的跨域请求。例如:
```java
response.setHeader("Access-Control-Allow-Headers", "Authorization");
```
当然,这只是一个示例代码,具体要根据你的服务器端框架来实现。
阅读全文