如何将JWT令牌通过标题传递给原生django rest api?

问题描述:

我从本地主机传入头令牌(我已经从控制台已知的),如下面的代码和数据需要经过用户得到验证,但在我的Android模拟器,它显示错误Cannot convert undefined or null to object如何将JWT令牌通过标题传递给原生django rest api?

Login.js

componentDidMount() { 
    return fetch('http://10.42.0.1:8000/stocks/', 
     { 
     method: "GET", 
     headers: 
     { 
      'Authorization': `Bearer ${"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6InNhbSIsInVzZXJfaWQiOjYxLCJlbWFpbCI6IiIsImV4cCI6MTUwMzk0ODYyMH0.l4VLMLXcSZ7nOmKmjblLKFr0lTSpgYeFks_JeYiO7cU"}` 
     } 
    }) 

    ... 

    } 

在views.py

class Stocks(APIView): 
     permissions_classes = [IsAuthenticated] 
     authentication_classes= (TokenAuthentication,) 
     def get(self,request): 
      stocks=stock.objects.all() 
      serailizer=serial(stocks,many=True) 
      return Response(serailizer.data) 

这里的令牌是不是在服务器到达,因此不被许可。 我们正在使用Django rest jwt令牌。 谢谢

令牌格式已更改,现在您需要发送“JWT {令牌}”请参阅docs

然后我推荐axios'组织'你的服务器通信。

而且该解决方案是这样:

return axios({ 
    method: 'GET', 
    url: `url`, 
    headers: { 
    Authorization: `JWT ${token}`, 
    }, 
    data: dataToSend, 
}); 
+0

是...感谢该格式为我工作。 –