Closed yaozhixing closed 6 years ago
在开发模式下,/config/index.js 设置 proxyTable 设置代理转发是完全没问题的, proxyTable: { '/api': { target: 'http://api.douban.com/v2', changeOrigin: true, pathRewrite: { '^/api': '' } } }, 但是,因为本人没有用vuex2,就用原生的vue,所以就没有封装你的/store/api 下的axios 函数,所以请求的host 也就没有判断是不是正式服和开发模式的方向代理。请问直接在axios.post 或者 axios.get 该怎么判断是否是正式和开发环境 分别 指定 host 的api地址问题,或者怎么封装这个axios 问题,请大神指点。 已经困恼我好久了
是的。开发环境与生产环境api应该是不一样的。 而且跨域这个问题是可以通过后端设置 CORS 来解决的。 我在开发模式下,之所以用 proxyTable 是因为豆瓣提供的 api 不支持跨域。如果是你自己的 api 服务的话,直接设置 CORS 就可以了,这样请求接口就不会有跨域问题了。 建议你先去了解下跨域问题及对应的解决方案。
proxyTable
在开发模式下,/config/index.js 设置 proxyTable 设置代理转发是完全没问题的, proxyTable: { '/api': { target: 'http://api.douban.com/v2', changeOrigin: true, pathRewrite: { '^/api': '' } } }, 但是,因为本人没有用vuex2,就用原生的vue,所以就没有封装你的/store/api 下的axios 函数,所以请求的host 也就没有判断是不是正式服和开发模式的方向代理。请问直接在axios.post 或者 axios.get 该怎么判断是否是正式和开发环境 分别 指定 host 的api地址问题,或者怎么封装这个axios 问题,请大神指点。 已经困恼我好久了