devServer 配置跨域代理
时间: 2023-08-19 08:06:24 浏览: 117
Webpack devServer中的 proxy 实现跨域的解决
devServer 配置跨域代理可以通过 webpack 的 devServer.proxy 选项来实现。在 webpack 配置文件中,可以添加如下代码:
```javascript
module.exports = {
// ...
devServer: {
proxy: {
'/api': {
target: 'http://api.example.com', // 目标 API 地址
changeOrigin: true, // 设置请求头中的 Host 为目标 API 的域名
pathRewrite: {
'^/api': '', // 将请求路径中的 '/api' 替换为空字符串
},
},
},
},
};
```
上述配置中,我们定义了一个代理规则,将以 '/api' 开头的请求转发到目标 API 地址 'http://api.example.com'。changeOrigin 选项设置为 true 可以修改请求头中的 Host,避免一些反向代理的问题。pathRewrite 选项可以对请求路径进行重写,这里将 '/api' 替换为空字符串。
配置完成后,启动 webpack-dev-server 后,前端发起的以 '/api' 开头的请求将被代理到目标 API 地址。例如,前端请求 '/api/users',实际上会被转发到 'http://api.example.com/users'。
需要注意的是,devServer.proxy 只适用于开发环境,在生产环境中需要使用其他方式进行跨域处理。
阅读全文