0

我可能没有阅读文档,但我希望在 fetch_token 之后,客户端身份验证应该由 client.get/post/request 等设置和使用。有人可以帮我澄清一下吗?

这是我的代码(在回调中):

from authlib.integrations.httpx_client.oauth2_client import OAuth2Client, OAuth2Auth
oauth_client = AsyncOAuth2Client(...)

token = await oauth_client.fetch_token(
  API_TOKEN_URL,
  authorization_response=str(request.url),
  grant_type='authorization_code',
)

user_request = await oauth_client.get(API_URL + "/users")

上面的结果是 401。但是下面的结果是 200:

oauth_client = AsyncOAuth2Client(...)

token = await oauth_client.fetch_token(
  API_TOKEN_URL,
  authorization_response=str(request.url),
  grant_type='authorization_code',
)

user_request = await oauth_client.get(API_URL + "/users", auth=OAuth2Auth(oauth_client.token))

我觉得我已经跳过了一步,因为这些示例似乎不需要auth传递给 .get/.post/.request/etc。我应该oauth_client.auth = OAuth2Auth(oauth_client.token)吗?

4

0 回答 0