django - 如何使用 Retrofit2 通过移动应用程序中的社交帐户对用户进行身份验证?
问题描述
我正在尝试连接我网站的 API 和移动应用程序。我需要使用 google 帐户对用户进行身份验证,但我不知道该怎么做。
我用 Django 创建了后端。我将端点设置为rest-auth/google/
. 在 restframework 的页面上,它需要访问令牌和代码,但老实说,我不知道如何测试它是否真的可以使用实际的谷歌帐户。我想通过移动应用程序进行测试,但我不明白我需要发布的方式和内容。
任何人都可以给我提示?
解决方案
我建议您使用现成的解决方案,例如“django-allauth”。
如果您想自己进行身份验证,您可能需要阅读 Google 关于该主题的文档: https ://developers.google.com/api-client-library/python/
简而言之,您创建 API 凭据: https ://console.cloud.google.com/apis/credentials
将用户发送到具有特定参数(api-credentials、范围、重定向链接等)的链接。谷歌客户端可以帮你生成。
用户将像往常一样登录他的帐户,并将授予您的应用程序使用他的信息的权限(或不会)。之后,他将被重定向到您使用 GET 请求指定的链接,并将代码作为参数(或错误)。
在 Google 客户端的帮助下,您可以交换令牌上的代码,然后使用该令牌从他的个人资料中获取信息。
推荐阅读
- python - 如何使用 Python asammdf 将 MDF 导出到 Excel 或 CSV
- javascript - 与固定导航栏重叠的英雄图像幻灯片
- javascript - 如何让我的 Rect 避开另一个 Rect(画布)
- firebird - UDF Firebird 函数 STRTOINT 未在查询中定义,即使它在 RDB$FUNCTIONS 中列出
- ansible - Ansible:如何在条件下获取数组中的值
- asp.net - ASP.NET MVC - 实体框架延迟加载不使用流式 API 从相关类中检索数据
- batch-file - 如何编写一个批处理脚本,该脚本将在两个文件路径中查找可执行文件,然后运行它
- angular - 在 Angular 7 指令上测试 @HostListening('error')
- javascript - 正则表达式:匹配 <.. class='row'..> 以在 js .split() 中使用
- wordpress - Wordpress 子项 slug