使用react開發項目,最近後端的同事給了介面。我用fetch,去做AJAX請求。但是控制台報錯如下!
出現了跨域的問題,有人說webpack dev server可以實作代理請求轉發,這樣就不會出現跨域的問題了。
但是我按照官方和網路別人的配置弄了下,還是一樣,沒有效果。
devServer: {
hot: true,
contentBase: resolve(__dirname, ''),
publicPath: '/',
proxy: {
'/api': {
target: 'http://test.lailaapp.com',
pathRewrite: {'^/api' : ''},
changeOrigin: true
}
}
},
我的配置如上,我不知道哪裡出問題了,使用了webpack2.0的版本照著官方的配置實現了熱更新。有沒有人幫我解答要如何配置才能實現請求轉發,解決跨域!
犯了一個常識性錯誤,配置了proxy不代表請求原來的url能自動解決跨域問題,
你應該要把請求地址改成本地的 也就是
http://localhost:port/api
例如
http://test.lailaapp.com/api/orderPlus/v2/bills
对应的就应该修改为http://localhost:port/api/orderPlus/v2/bills
当然
http://localhost:port
可以省略,也就是/api/orderPlus/v2/bills