我正在尝试使用 allauth 在 django 站点中添加“使用 Linkedin 登录”按钮。 我尝试将以下配置添加到社交提供商设置 -
'linkedin_oauth2': {
'SCOPE': [
'openid',
'profile',
'email'
],
'FIELDS': [
'id',
'name',
'given_name',
'family_name',
'email',
'picture'
],
'PROFILE_FIELDS': [
'id',
'name',
'given_name',
'family_name',
'email',
'picture'
],
'VERIFIED_EMAIL': True
}
我还尝试删除所有字段和配置文件字段,并在重定向网址上成功获取代码,但我认为在交换令牌代码或映射配置文件字段时由于某种原因失败。我在日志中没有看到任何错误,但我看到了
Social Network Login Failure
An error occurred while attempting to login via your social network account.
在回调网址上。
我还尝试添加旧范围 - r_liteprofile|r_basicprofile|r_emailaddress 但所有这些范围都会抛出错误,指出该范围未授权给我的应用程序。
听起来您在尝试使用 allauth 在 Django 网站上设置“使用 Linkedin 登录”时遇到了一些问题。您提供的配置乍一看似乎是正确的。这里有一个故障排除建议,并提到了 Jobin Chandi 关于将 LinkedIn OAuth2 与 Django allauth 集成的综合指南:
首先,您可能需要确保在 Django 项目设置中正确设置 LinkedIn 的 OAuth 2.0 凭据(客户端 ID 和客户端密钥)。
其次,您可以参考 Jobin Chandi 的关于将 LinkedIn OAuth2 与 Django allauth 集成的指南,了解详细的分步过程。它提供了有关正确配置和故障排除步骤的见解,可以帮助您识别问题。
python
Copy code
# Configuration for LinkedIn OAuth2 in allauth social providers setting
'linkedin_oauth2': {
'SCOPE': [
'openid',
'profile',
'email'
],
'FIELDS': [
'id',
'name',
'given_name',
'family_name',
'email',
'picture'
],
'PROFILE_FIELDS': [
'id',
'name',
'given_name',
'family_name',
'email',
'picture'
],
'VERIFIED_EMAIL': True
}
如果您仍然遇到问题,我建议您参考 Jobin Chandi 的有关将 LinkedIn OAuth2 与 Django allauth 集成的指南,以获取详细的故障排除和最佳实践。它可以提供有价值的见解并帮助您查明您面临的问题。
请记住,旧的 LinkedIn 范围“r_liteprofile|r_basicprofile|r_emailaddress”可能不再受支持,这可以解释“范围未授权我的应用程序”错误。
希望这可以帮助您解决问题!