gpt4 book ai didi

Python 请求 OAuth2Session() 传递多个范围参数

转载 作者:行者123 更新时间:2023-12-05 07:36:08 25 4
gpt4 key购买 nike

我已使用“data_read”作为范围成功授权 API 连接,但是我在将多个范围参数(“data_read”和“data_write”)传递到 OAuth2Session() 函数时遇到问题。

多个作用域的参数需要传递到URL字符串中

https://api.website.com/oauth20/authorize?response_type=code&client_id=123456&redirect_uri=https...& scope=data_read&scope=data_write...

我试过使用逗号分隔的列表:

scope=["data_read", "data_write"]

结果是:

https://api.website.com/oauth20/authorize?response_type=code&client_id=123456&redirect_uri=https...& scope=data_read+data_write

我也试过在字典中传递范围列表:

dict_scope = {'scope':["data_read", "data_write"]}

导致错误:

ValueError: Invalid scope ({'scope': ['data_read', 'data_write']}), must be string, tuple, set, or list.

我在这里查看了请求文档:

http://docs.python-requests.org/en/master/user/quickstart/#passing-parameters-in-urls

这里:

http://requests-oauthlib.readthedocs.io/en/latest/api.html#oauth-2-0-session

和此处的 OAuth2 示例:

http://requests-oauthlib.readthedocs.io/en/latest/examples/examples.html#examples

任何想法或建议将不胜感激

最佳答案

遇到了同样的问题。传递由多个范围参数组成的以空格分隔的字符串,如下所述。

scope = "data_read data_write"

关于Python 请求 OAuth2Session() 传递多个范围参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49247924/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com