反应本机获取发送请求不向django后端发送数据

时间:2016-07-27 06:41:35

标签: django react-native cors django-rest-framework django-rest-auth

我正在通过django-rest-auth实现facebook登录并做出本机反应。

我已经正确安装了facebook sdk并且能够获取访问令牌但是当我尝试将其发布到后端时它会给我错误的请求错误。

调试后发现没有数据发送到服务器。

我认为它可能与CORS有关,因为应用程序位于localhost:8001和django in localhost:8000但我安装了django-cors-headers但仍未发送数据。

请在这帮帮我.. 这是获取请求的代码。

fetch(loginUrl, {
  method: 'post',
  headers: {
    'Content-Type': 'application/json',
    'Accept': 'application/json'
  },
  body: JSON.stringify({
    data:'ahahah'
  })
})
.then((response) => {
  alert(response)
})
.catch((error) => {
  alert(error)
})

1 个答案:

答案 0 :(得分:0)

我在处理从react-native到Django的帖子数据时发现了一些事情。

使用' application / json'作为Content-Type,数据将不会在request.POST中看到。但是,如果您将内容类型更改为' application / x-www-form-urlencoded'然后Django看到request.POST中的数据。

如果你真的想使用' application / json'然后你必须自己从身体获取数据:

body_unicode = request.body.decode('utf-8')
body_data = json.loads(body_unicode)