vite 项目中怎么解决跨域 , has been blocked by CORS policy
时间: 2023-11-17 14:19:23 浏览: 265
vue3+vite创建项目-(傻瓜式教程)
在 Vite 项目中解决跨域问题,主要有两种方法:
1. 使用代理:Vite 提供了一个 devServer.proxy 选项,你可以在 vite.config.js 或者 dev 脚本中配置代理来解决跨域问题。例如,你可以在 vite.config.js 中添加以下代码:
```javascript
module.exports = {
server: {
proxy: {
'/api': {
target: 'http://api.example.com',
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '')
}
}
}
}
```
上述代码将会把以 "/api" 开头的请求代理到 "http://api.example.com"。
2. 设置 CORS 头部:如果你对后端有控制权,你可以在后端的响应中设置 CORS 头部来解决跨域问题。在 Express.js 中,你可以通过安装 `cors` 中间件并使用它来设置 CORS 头部。例如:
```javascript
const express = require('express');
const cors = require('cors');
const app = express();
app.use(cors());
// 其他路由处理代码
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
```
这样就会允许所有来源的请求访问你的 API。
以上两种方法都可以帮助你在 Vite 项目中解决跨域问题。选择哪种方法取决于你的具体需求和后端环境。
阅读全文