将令牌传递给React Native中的Django Rest API

我在Django中设置了rest-api,并使用React Native与它连接。 我有注册用户并能够生成令牌,但是我无法在GET请求的头部中传递令牌。 我的代码如下:

try{
        let response = await fetch("http://127.0.0.1:8000/fishes/auth/",
          {
          method: 'GET',
          headers: {
          //  'Accept': 'application/json',
            'Content-Type': 'application/json',
            'Authorization': ' Token '+accessToken,
          }});

        let res = await response.text(); 
}}

我一直在关注这个链接http://cheng.logdown.com/posts/2015/10/27/how-to-use-django-rest-frameworks-token-based-authentication,并且已经验证了来自其余的API是正确的。

然而,在本机反应的手机上,我在控制台中得到以下错误:

TypeError: Network request failed
at XMLHttpRequest.xhr.onerror (fetch.js:441)
at XMLHttpRequest.dispatchEvent (event-target.js:172)
at XMLHttpRequest.setReadyState (XMLHttpRequest.js:542)

我在GET代码中做了什么错误?


好的401状态码意味着未经授权。 对于Django Rest Framework,您必须将访问令牌作为所有API请求的标头的一部分传入。

标题格式将

Key : Authorization
Value:  Token <token>

你可以在这里看到更多http://www.django-rest-framework.org/api-guide/authentication/#tokenauthentication


我认为你需要改变

'Content-Type'为'content-type'

小写

链接地址: http://www.djcxy.com/p/33793.html

上一篇: Passing Token Using Fetch to a Django Rest API in React Native

下一篇: Storing user password in PHP for RESTful API authentication