问题背景
按照正常发送网络请求的流程
请求地址:http://localhost:5000/login
安装axios:npm install axios --save
新建request.js文件:
import axios from 'axios';
export default {
get:(url,data,error,hearder)=>
axios.get(url,{params:data,headers:hearder})
.then(response=>response.data)
.catch((err)=>{})
,
post:(url,data,error,hearder)=>
axios.post(url,data,hearder)
.then(response=>response.data)
.catch((err)=>{})
}
配置代理
const {createProxyMiddleware}= require('http-proxy-middleware')
module.exports=function(app){
app.use(
createProxyMiddleware('/api1',{
target:'http://localhost:5000',
changeOrigin:true,
pathRewrite:{"^/api1":""}
})
)
}
发送网络请求
const res=await reqLogin(obj)
console.log(res);
问题描述
整个流程是没有问题的,代码也没有写错 ,但是打印res的时候一直为undefind,网络请求返回了数据,但是路径里多了一个api1,即http://localhost:3001/api1/login,数据返回正常。
解决方法
//在request.js里添加eslint-disable-next-line import/no-anonymous-default-export
import axios from 'axios';
// eslint-disable-next-line import/no-anonymous-default-export
export default {
get:(url,data,error,hearder)=>
axios.get(url,{params:data,headers:hearder})
.then(response=>response.data)
.catch((err)=>{})
,
post:(url,data,error,hearder)=>
axios.post(url,data,hearder)
.then(response=>response.data)
.catch((err)=>{})
}