vue对servlet的跨域解决办法
时间: 2023-11-13 08:04:24 浏览: 91
在Vue中解决与Servlet的跨域问题,可以通过配置代理来实现。具体步骤如下:
1. 在Vue项目的根目录下创建vue.config.js文件,并在其中添加以下内容:
```
module.exports = {
devServer: {
proxy: {
'/api': {
target: 'http://localhost:8080', // Servlet的地址
changeOrigin: true,
pathRewrite: {
'^/api': '' // 将请求中的 /api 替换为空
}
}
}
}
}
```
2. 在Vue项目中发起请求时,将请求地址的前缀设置为 '/api' ,例如:
```
axios.get('/api/user')
```
这样,发起的请求会被代理到 'http://localhost:8080/user',从而避免了跨域的问题。
需要注意的是,在Servlet中需要设置响应头,允许跨域访问。可以在Servlet中添加以下代码:
```
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Allow-Headers", "x-requested-with, Content-Type");
```
以上是一种简单的解决方案,具体实现方式还需要根据具体的场景和需求来选择。
阅读全文