Django REST API连接问题

时间:2017-05-13 04:03:13

标签: python django rest django-rest-framework axios

我是使用Django的新手,所以对某人来说这可能是一件容易的事......我希望如此!

我按照此处的教程构建了一个Django REST API:http://www.django-rest-framework.org/。当我运行服务器时,我可以使用Browsable API并浏览API,例如具体的链接:http://127.0.0.1:8000/snippets/。我也可以通过Postman GET请求访问此URL并检索关联的代码段。

现在,这是我的问题:

我创建了一个React Native应用程序,我从这个URL获取数据(我的python服务器正在运行)。我在console.log中得到了响应,我不断收到错误:

Error: Network Error
    at createError (createError.js:15)
    at XMLHttpRequest.handleError (xhr.js:87)
    at XMLHttpRequest.dispatchEvent (event-target.js:172)
    at XMLHttpRequest.setReadyState (XMLHttpRequest.js:478)
    at XMLHttpRequest.__didCompleteResponse (XMLHttpRequest.js:324)
    at XMLHttpRequest.js:418
    at RCTDeviceEventEmitter.emit (EventEmitter.js:179)
    at MessageQueue.__callFunction (MessageQueue.js:236)
    at MessageQueue.js:108
    at guard (MessageQueue.js:46)

我可以刷新浏览器或邮递员中的链接并且没有任何问题,但是在获取中...我无法取得任何成功,并且只能回复上面的模糊错误消息。

我认为它可能必须与CSRF或CORS ...但我在Django中都有这两个设置好(并且错误信息没有说那些所以我不认为那是它)。

有任何建议/想法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

并非任何人都可以从我的帖子中明确知道这一点......但我想发布这个答案,不管是否有可能遇到同样问题的人。

我一直在通过Expo开发React Native应用程序,并将其部署到我的物理手机而不是iOS / Android模拟器。

在这种情况下,显然我的http://127.0.0.1:8000http://localhost:etc无法通过手机发挥作用!然后我转而使用iOS模拟器,它第一次尝试没有问题。