如何使用Django REST框架和React.js前端对用户进行身份验证?

时间:2016-09-08 23:51:52

标签: django reactjs django-rest-framework django-authentication django-allauth

我正在制作一个网站,django在后端休息,而react.js在前端。这将是我第一次使用带有django的前端框架。我在后端使用django-allauth进行社交认证(facebook / twitter / google)。

一旦用户通过第三方提供商(facebook)通过网络会话(使用allauth)登录,我如何将该数据传递给我的反应应用程序?

我是否获取了facebook令牌,对其进行身份验证,然后生成oauth2 / jwt令牌并以某种方式存储?是否有一些样板/代码可以节省我的时间。我不想在这里重新发明轮子。

非常感谢!

2 个答案:

答案 0 :(得分:1)

获得令牌后,您可以将其存储在cookie中(如果您开发IOS应用程序,则将钥匙串存储),而不是将令牌放入请求标头中,然后向服务器发出请求,如:

curl -H "Authorization: bearer your_access_token" -A "ChangeMeClient/0.1 by YourUsername" http://your_server/your_api

这可能有助于Authorizing a request

答案 1 :(得分:0)

这是一个古老的问题,但我想我会喜欢的人现在就读这个...

只要您设置{{1}},您就应该能够通过具有各种后端的DRF进行身份验证。

如果您正在使用Redux,则可以考虑使用一个简单的npm软件包,该软件包已经完成了所有基础工作:drf-redux-auth。至少,它可能会提供您正在寻找的“样板”。