访问用户 google 驱动器
Accessing a users google drive
我有一个 django 站点,它使用 Django allauth 供用户使用他们的 google 帐户登录并授予对他们的 google 驱动器的权限。登录后,django-allauth
会为该用户保存一个令牌。这部分工作正常。
我现在如何访问用户的 google 驱动器(已授予权限),以列出可用文件?大概这需要使用由于 django-allauth
.
而保存的令牌
我已经安装了 python google api client 但我正在努力弄清楚如何使用用户的令牌来列出他们的 google 驱动器的内容。
有烧瓶例子here which im trying to modify for use in a django project utilizing django-allauth
. The sign in flow works correctly, but django-allauth
does not ensure that google drive access is requested. I've tried updating my settings as per this:
SOCIALACCOUNT_PROVIDERS = {
"google": {
"SCOPE": [
"https://www.googleapis.com/auth/drive.metadata.readonly",
"https://www.googleapis.com/auth/userinfo.profile",
],
"AUTH_PARAMS": {"access_type": "offline"},
}
}
没有发布任何答案,所以我只是发布我结束时做的事情。看起来 django-allauth
不能同时用于常规 google 身份验证和 api 身份验证。
因此,目前用户首先必须使用由 django-allauth
处理的 google 帐户登录该站点。然后一旦他们登录,他们就可以 select 授予访问他们的 google 驱动器的权限,然后启动一个新的身份验证流程(使用 Google python api client)
对于现在阅读本文的任何人,allauth 的当前版本确实支持 API 身份验证。
您需要在 SCOPE 列表中提供完整的 URL(例如 https://www.googleapis.com/auth/drive),而不仅仅是范围名称(例如电子邮件),用于不在 allauth 中的默认列表中的范围.
我有一个 django 站点,它使用 Django allauth 供用户使用他们的 google 帐户登录并授予对他们的 google 驱动器的权限。登录后,django-allauth
会为该用户保存一个令牌。这部分工作正常。
我现在如何访问用户的 google 驱动器(已授予权限),以列出可用文件?大概这需要使用由于 django-allauth
.
我已经安装了 python google api client 但我正在努力弄清楚如何使用用户的令牌来列出他们的 google 驱动器的内容。
有烧瓶例子here which im trying to modify for use in a django project utilizing django-allauth
. The sign in flow works correctly, but django-allauth
does not ensure that google drive access is requested. I've tried updating my settings as per this:
SOCIALACCOUNT_PROVIDERS = {
"google": {
"SCOPE": [
"https://www.googleapis.com/auth/drive.metadata.readonly",
"https://www.googleapis.com/auth/userinfo.profile",
],
"AUTH_PARAMS": {"access_type": "offline"},
}
}
没有发布任何答案,所以我只是发布我结束时做的事情。看起来 django-allauth
不能同时用于常规 google 身份验证和 api 身份验证。
因此,目前用户首先必须使用由 django-allauth
处理的 google 帐户登录该站点。然后一旦他们登录,他们就可以 select 授予访问他们的 google 驱动器的权限,然后启动一个新的身份验证流程(使用 Google python api client)
对于现在阅读本文的任何人,allauth 的当前版本确实支持 API 身份验证。
您需要在 SCOPE 列表中提供完整的 URL(例如 https://www.googleapis.com/auth/drive),而不仅仅是范围名称(例如电子邮件),用于不在 allauth 中的默认列表中的范围.