因此,我正在使用ReactJS和DjangoRESTframework构建我的应用。
现在..当我用Postman发送请求时,它可以正常运行(例如127.0.0.1:8000/api/users/
GET请求),当我尝试在React中使用Axios进行操作时,出现网络错误,但是在本地开发服务器控制台上看到成功了。
这是我对axios的响应:
componentDidMount() {
axios.get('http://127.0.0.1:8000/api/users/', {
headers: {
'Accept': 'application/json'
}
})
.then(res => {
console.log(res.data);
}).catch(err => {
console.log(err);
})
}
我得到了一个网络错误。但是正如我对邮差所说的那样。
另一个示例是,我将Axios的POST请求发送到http://127.0.0.1:8000/api/users/
,作为响应,我也收到了“网络错误”,但在后端,创建了用户IS。
这是我使用axios的POST请求的代码:
let formData = new FormData();
formData.set('email', this.state.emailField);
formData.set('username', this.state.usernameField);
formData.set('password', this.state.passwordField);
axios({
method: 'POST',
data: formData,
url: 'http://127.0.0.1:8000/api/users/',
config: {headers: {'Content-Type': 'multipart/form-data'}}
}).then(request => {
console.log(request.data);
}).catch(err => {
console.log(err);
})
我用Google搜索了一个小时来解决此问题,但没有帮助。
答案 0 :(得分:1)
您能否更清楚地了解网络错误?附加一些错误消息/堆栈跟踪。
对我来说,这似乎是一个Cross-Origin Resource Sharing (CORS) 问题。尝试在DjangoRESTframework后端上配置CORS。
This可能会帮助您。