
正文
解决ant Design dva ajax跨越请求 (status=0)
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
今天实现了antd作为前端展现,python flask作为后端的数据填充,完全两个独立的服务;过程中遇到ajax跨越请求问题,导致status一直等于0,原来是这么写的:
xmlhttp.open("GET", "http://192.168.118.129:8001/test_react_action?user_name=" + values.userName, true);
xmlhttp.send();
被解析为跨越访问了,这个时候需要在dva中添加代理才能访问,方法如下:
修改.roadhogrc文件:
{
"entry": "src/index.js",
"env": {
"development": {
"extraBabelPlugins": [
"dva-hmr",
"transform-runtime",
["import", { "libraryName": "antd", "style": "css" }]
]
},
"production": {
"extraBabelPlugins": [
"transform-runtime"
]
}
},
"proxy": {
"/api": {
"target": "http://192.168.118.129:8001/",
"changeOrigin": true,
"pathRewrite": { "^/api" : "" }
}
}
}
添加完红色部分代码以后,直接‘/api/test_react_action’就能访问了。
xmlhttp.open("GET", "/api/test_react_action?user_name=" + values.userName, true);
xmlhttp.send();
注意:如果同是本地的服务器,代理可能不能识别,我这192.168.118.129是单独的一个服务,不在同一个ip。







