項目中遇到請求跨域問題玖瘸,我們一般需要項目中配置代理解決锁荔。
我的項目是create-react-app2.0版本生成的她奥。
- 首先安裝包
http-proxy-middleware
npm install http-proxy-middleware --save
# or
yarn add http-proxy-middleware
- 然后在src目錄下創(chuàng)建 setupProxy.js 文件
- 最后設置代理
// setupProxy.js
const proxy = require('http-proxy-middleware')
module.exports = function(app) {
app.use(
proxy('/api', { //`api`是需要轉(zhuǎn)發(fā)的請求
target: 'http://localhost:5000', // 這里是接口服務器地址
changeOrigin: true,
})
)
}
這里需要注意的是我們的axios的baseURL怔蚌,設置的時候不能還設置加上原來服務器域名的地址,應該只設置 /api
就好了,我是在這里犯了錯誤
axios.defaults.baseURL = '/api';
我們請求數(shù)據(jù)的時候就可以
axios.post('/v1/register');
經(jīng)過上面幾個步驟我們應該是能跨域訪問服務器了愉阎。