twitter - Tweepy 身份验证与授权

标签 twitter oauth-2.0 twitter-oauth tweepy

我与 Facebook、Google 和 Twitter 合作过 Oath;但是,我对后者有疑问,它每次都使用“授权”URL 而不是“身份验证”。结果是每次都要求用户授权我的应用程序。对于 Google 和 FB,一旦应用程序获得授权,他们在登录时就不会再被询问。如果用户登录到其中一项服务,它会在幕后知道,如果是(并且他们已经授权我的应用程序),它会记录它们立即进入我的应用程序。使用 Twitter,每次都会将他们带到授权屏幕。

我知道这是由于我在 Twitter 上的流程,它说:redirect_url = auth.get_authorization_url() 后跟 self.redirect(redirect_url)

上面的关键是“授权”,它不知道用户之前接受了我的应用程序。在 Twitter 中,我知道有一个复选框“允许使用此应用程序登录 Twitter”。这是检查过的。我无法找到的是 Tweepy 的正确路径,它检查用户是否已经登录到 Twitter 并且已经授权我的应用程序。

我确实保存了 Twitter 在第一次授权时发回给用户的 token ,但是,在用户登录之前我不知道用户是谁,因此我无法尝试在练习的初始部分使用这些 token 。我应该注意,在此阶段我不必使用来自 Google 或 FB 的 token 。

可以按上述方式使用 Tweepy 还是我需要做其他事情?

谢谢!

最佳答案

幸运的是,有一个非常简单的解决方案。调用 api.get_authorization_url 时,只需将 signin_with_twitter=True 指定为关键字参数即可。你的电话应该是这样的:

api.get_authorization_url(signin_with_twitter=True)

这会导致 Tweepy 使用您提到的“身份验证端点,而不是授权”端点。

关于twitter - Tweepy 身份验证与授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21465532/

相关文章:

javascript - 如何将推文时间转换为可读秒?

json - 将包Elastic(嵌套列表?)的R输出转换为data.frame或JSON

javascript - 未找到模块 xhr 未找到 cordova-1.5.0.js

php - 使用 Twitter OAuth Echo 进行 verify_credential,如何获取电子邮件?

android - Twitter4J + Android : Authentication Challenge is Null Exception

javascript - Embed.ly Twitter 小部件内的 Angular 数据绑定(bind)不起作用

macos - 使用 ffmpeg 分割 .flac 文件会截断音频但不会截断文件长度

ios - 具有 dropbox oauth2 授权的 iOS 应用程序的自定义 URL 方案?

oauth - OAuth2:使用JWT客户端身份验证的JWT授权授予和客户端凭据授予之间有什么区别?

python - urllib.request.Request 说参数无效