【发布时间】:2020-04-14 14:49:54
【问题描述】:
我想让用户个人资料数据通过 Twitter 身份验证。实际上,access_token 可以被获取,但是当应用程序获取twitter_profile_detail 时会发生错误。
错误代码:
response 410
我的代码:
access_token_url = 'https://api.twitter.com/oauth/access_token'
protected_url = 'https://api.twitter.com/1/account/settings.json'
oauth_token = request.args.get('oauth_token')
oauth_verifier = request.args.get('oauth_verifier')
twitter = OAuth1Session(
client_id,
client_secret,
oauth_token,
oauth_verifier
)
response = twitter.post(
access_token_url,
params={'oauth_verifier': oauth_verifier}
)
access_token = dict(parse_qsl(response.content.decode("utf-8")))
## Success fetched
oauth = OAuth1Session(
client_id,
client_secret=client_secret,
resource_owner_key=access_token["oauth_token"],
resource_owner_secret=access_token["oauth_token_secret"]
)
response = oauth.get(protected_url)
## 410 error
user = get_or_create_user(access_token)
get_or_create_twitter_profile(user, access_token)
【问题讨论】:
-
API v1 已于 2012 年关闭,正确的 URL 应为
https://api.twitter.com/1.1/account/settings.json。你能发布你的函数get_or_create_user和get_or_create_twitter_profile的代码吗,因为不可能知道它们在做什么。 -
谢谢我在替换 url 后得到它:)