from origin 'http://localhost:8080' has been blocked by CORS policy: The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed.服务器端在哪里
时间: 2023-08-25 18:12:30 浏览: 167
服务器端是指提供服务的后端服务器,通常是一个 Web 服务器,例如 Apache 或 Nginx。如果你使用的是某个框架,例如 Express 或 Django,则服务器端代码会集成在框架中。
要解决上述的跨域问题,你需要在服务器端设置响应头部 "Access-Control-Allow-Origin",来允许客户端跨域访问数据。具体的设置方法,取决于你使用的服务器端技术和框架。
在 Node.js 中,可以使用以下代码设置响应头部:
```
response.setHeader('Access-Control-Allow-Origin', 'http://localhost:8080');
```
其中,response 是 HTTP 响应对象,'http://localhost:8080' 是允许跨域访问的来源地址。你也可以设置为 "*",表示允许所有来源访问。
如果你使用的是 Express 框架,可以使用 cors 中间件来设置响应头部,例如:
```
const express = require('express');
const cors = require('cors');
const app = express();
app.use(cors({
origin: 'http://localhost:8080'
}));
```
其中,app 是 Express 应用程序对象,cors 中间件会自动设置 "Access-Control-Allow-Origin" 头部,允许来自 http://localhost:8080 的跨域请求。
相关问题
p://localhost:8081/sku/sku/list?current=1&size=10' from origin 'http://localhost:8080' has been blocked by CORS policy: The 'Access-Control-Allow-Origin' header contains multiple values 'http://localhost:8080, http://localhost:8080', but only one is allowed.
这是一个CORS(跨域资源共享)的错误。它表示你的浏览器尝试从不同的域(或端口)请求资源,并且服务器没有正确配置CORS头。具体来说,服务器的响应头中设置了多个允许访问的域('http://localhost:8080, http://localhost:8080'),而规范要求这个头部只能设置一个值。要解决这个问题,你需要在服务器端将响应头中的 'Access-Control-Allow-Origin' 属性设置为一个正确的值,例如:'http://localhost:8080'。
from origin 'http://localhost:8080' has been blocked by CORS policy: The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed.
这个错误的原因是响应头中的 "Access-Control-Allow-Origin" 头部包含了多个值,但只允许有一个值。在你的情况下,响应头中的 "Access-Control-Allow-Origin" 头部的值为 "*", "*", 这是不合法的,因为该头部只能有一个值。
要解决这个问题,你需要确保 "Access-Control-Allow-Origin" 头部只包含一个值。如果你想允许任何来源的请求访问你的资源,可以将该头部的值设置为 "*"。例如,在 Express.js 中,你可以使用以下代码设置 "Access-Control-Allow-Origin" 头部:
```javascript
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
next();
});
```
如果你想限制跨域请求的来源,可以将该头部的值设置为允许的域名。例如,如果你只想允许 "http://example.com" 的请求访问你的资源,可以将该头部的值设置为 "http://example.com":
```javascript
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "http://example.com");
next();
});
```
请注意,这种设置会限制跨域请求的来源,因此在生产环境中建议更加谨慎地设置该头部。
阅读全文