解决经历的过程

1.在服务器端设置响应头

​似乎不是很完美,有时候也会请求失败​

//解决vue跨域问题
resp.addHeader("Access-Control-Allow-Origin","*");
resp.addHeader("Access-Control-Allow-Method","POST,GET");

2.手脚架添加配置文件​​vue.config.js​

​似乎也不是很完美,有时也会请求失败​

module.exports = {
devServer: {
port: 8080, // 源地址端口,自行修改
proxy: {
'/api': {
target: 'http://localhost:8080', // 跨域目标主机,自行修改
ws: true, // 代理 websockets
changeOrigin: true,
pathRewrite: {
'^/api': '' // 重写地址
}
},
}
}
};

3.代理服务器​​推荐​

  1. 在方法2的基础上配置自己的服务器地址+端口
  2. 在自己的服务器实现代理请求
  3. 请求转发响应得到的结果

​简单Java servlet 实现​

  1. 创建servlet
  2. vue配置文件​​vue.config.js​​,填写自己的服务器地址
  3. vue发送get请求,请求servlet
  4. servlet中使用​​String body = HttpRequest.get("http://c.m.163.com/nc/auto/list/6YOR5bee/0-20.html").body();​​​获取响应数据(自行进行自己的判断),servlet使用​​Gson + write​​​打包数据并返回。​​writer.println(gson.toJson(new RespPak(1,body)));​