const getInfo=()=>{ axios.get("http://localhost:3000/posts",{ withCredentials: true }).then((res)=>{ console.log(res.data) }).catch((error)=>{ console.log(error) }) }服务器端设置了 res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization'); res.header('Access-Control-Allow-Methods', 'POST, GET, OPTIONS');还是报跨域错误
时间: 2023-12-29 14:05:41 浏览: 140
https://www.npmjs.com/package/use-socket.io-client
如果你已经在服务端设置了跨域响应头并且在axios请求时添加了`withCredentials: true`参数,但仍然报跨域错误,可能是因为axios请求的地址或者端口号不正确,可以尝试检查一下。
还有一种可能性是,如果你的服务端是使用Node.js搭建的,并且使用了`http`模块来创建服务器,那么你需要使用`cors`中间件来解决跨域问题。可以使用以下命令来安装`cors`:
```
npm install cors --save
```
然后在服务端代码中使用`cors`中间件,例如:
```
const express = require('express');
const cors = require('cors');
const app = express();
app.use(cors());
// 其他路由和中间件
app.listen(3000, () => {
console.log('server is running at http://localhost:3000');
});
```
这样就可以解决跨域问题了。
阅读全文