2 回答
TA贡献1883条经验 获得超3个赞
这看你用什么ajax框架,一般异步请求框架都是有请求、响应拦截器的,将请求拦截下来修改替换地址前缀就行了。不过如果是vue的话一般都用的axios
import axios from 'axios'
let env = 0 //0,正式环境,1,开发环境,2,测试环境
let releaseBaseUrl = '/share'
let devBaseUrl = '/api/share'
let baseUrl= releaseBaseUrl
export const htp = axios.create({
baseURL: baseUrl,
timeout: 10000,
headers: {"Content-Type": "application/x-www-form-urlencoded"},
withCredentials: true
})
htp.interceptors.request.use(req => {
return handleRequest(req)
}, error => {
return Promise.reject(error)
})
const handleRequest = req => {
console.log('befor convert', req )
if(0 === env){
req.baseURL = releaseBaseUrl
}else if(1 === env){
req.baseURL = devBaseUrl
}
console.log('after convert', req)
return req
}
题外话:前端开发也是有规范的,可能你也需要参考后端的mvc模式来开发,或许你至少得有个baseURL吧,然后用一个service层来给前端view层提供数据支持,尽量不要把url直接写在view层中,不然修改可能会很麻烦,再说一点题外话,真心觉得用proxy的方式或其它方式跨域很麻烦,建议让后端直接允许跨域。
添加回答
举报
