vue–解决前端数据请求存在的跨域问题
在此案例中:
前端(浏览器)运行的地址是: hhtp://localhost:8080 ;
后端(服务器)运行的地址是: http://localhost:8081
当我们将请求接口的路径都写好后。将前端代码在 http://localjost:8080 运行。请求接口时,右键–检查,network显示状态码为200(接口请求成功)。但是我们的界面并没有加载出来我们期待的后端接口中的内容。
此时,我们与要注意的是。前端代码的运行地址与后端的运行地址并不相同,前端会默认在 http://localhost:8080 请求数据。此时我们的接口信息请求就要解决跨域问题。即解决前后端运行在不同地址之间的请求问题。
接下来上步骤:
1:新建配置文件
新建文件 vue.config.js
在主目录下。
2.配置代理
我们的端口请求的地址依旧是 8080 ; 但是8080端口会将请求交给8081 端口代理。
//解决跨域问题
//新建代理的对象
let proxyObj = {}
proxyObj['/'] = {
//websocket
ws: false,
target: 'http://localhost:8081',
//表示我们发送请求的请求头 host 会被我们设置成 target
changeOrigin: true,
//不重写请求地址
pathReWrite: {
'^/': '/'
}
}
module.exports = {
devServer: {
host: 'localhost',
port: 8080,
proxy: proxyObj
}
}
跨域问题就可以基本被解决了。
记录学习过程,希望对更多人有帮助。