BOX API认证获取auth_code

问题描述 投票:0回答:1

我正在尝试与 BOX API 进行交互。 我做了多项研究,并遵循了多个关于如何做到这一点的教程,但我错过了一步...... 我需要获得

auth_code
才能获得
refresh_token
access_token
。据我了解,身份验证后,
auth_code
作为 URL 中的参数。

from boxsdk import OAuth2
SDK = OAuth2(
    client_id=CLIENTID,
    client_secret=CLIENTSECRET
)
auth_url, csrf_token = SDK.get_authorization_url('{}/api/oauth2/authorize?response_type=code&client_id={}&redirect_uri={}/folder/0'.format(ENPOINT, CLIENTID, ENPOINT))
TOKENS['auth_url'] = auth_url
TOKENS['csrf_token'] = csrf_token
requests.get(auth_url)

当我通过浏览器访问

auth_url
中返回的 URL 时,它会将我带到如下网站:

enter image description here.

在我手动单击授予对 Box 的访问权限后,它会将我重定向到我选择的 Box 文件夹,并且 URL 的格式为:https://xxxxx.com/folder/0?code=zzzzz&state=yyyyy 。 我的目标是提取 zzzzz,但我不明白如何以编程方式获取它......

References:
https://developer.box.com/guides/authentication/oauth2/with-sdk/
https://github.com/box/box-python-sdk#box-python-sdk
https://www.youtube.com/watch?v=ha26tN8amI0

一点帮助将非常有价值。

python oauth-2.0 python-requests box-api
1个回答
0
投票

部分答案:您可以通过执行以下操作来检索代码。只需重定向:

auth_url, csrf_token = oauth.get_authorization_url('https://google.com')

您必须在开发控制台中将重定向 URI 设置为

https://google.com
。在您返回的 URL 中就是您需要的代码。

剩余问题:唯一的问题是您必须手动授予访问权限。我仍然需要克服这个问题。那么问题就解决了。有人知道如何授予访问权限吗?

© www.soinside.com 2019 - 2024. All rights reserved.