我的申请的Twitter api授权

loc*_*zak 6 javascript php twitter jquery

我正在使用这个twitter api库,到目前为止一切都很棒.我的问题(用户体验不是真正的问题)是每次你想用twitter登录时都需要打开一个弹出窗口.

现在流程是这样的:

  • 用户点击我页面上带有twitter徽标的登录信息.
  • Javascript引发的弹出窗口出现了Twitter上的Oauth内容.如果您已登录,则表示登录并取消.如果你不是,它有登录字段.
  • 如果一切顺利,它会转到我提供的回调网址.做了一堆东西然后..
  • 我调用window.opener并传递经过身份验证的信息,然后关闭窗口.

这非常容易实现并且工作得很好.我想知道twiiter登录过程是否会像facebook那样更像.

  • 用户点击我页面上带有twitter徽标的登录信息.
  • 如果用户已登录并已自动化应用程序,弹出窗口将弹出窗口立即消失并将用户数据丢回我的页面.

我确实意识到我正在使用一个php库用于推特和facebook流程来自javascript方面,但我想知道我是否能用php检测,如果用户已经允许该应用并且已登录,则他们绕过额外登录/取消点击.

arc*_*ain 3

尝试使用“使用 Twitter 登录”流程。如果用户已经通过身份验证,则只需一键操作。上面的链接文档有一个流程图和该过程的描述,但我也会在此处列出步骤(并添加强调),并链接到相关 API 页面:

“使用 Twitter 登录”是一种身份验证模式,允许用户只需单击一下即可将其 Twitter 帐户与第三方服务连接起来。它利用 OAuth,虽然流程非常相似,但授权 URL 和工作流程略有不同,如下所述。

正常流程指示应用程序将请求令牌发送到 Twitter 的 OAuth 规范实现中的oauth/authorize 。要利用“使用 Twitter 登录”,应用程序应将oauth_token 参数中收到的请求令牌发送到oauth/authenticate

oauth /authenticate方法将根据用户的状态以及他们之前与调用应用程序的交互以不同的方式执行操作:

  1. 如果用户登录 twitter.com 并且已经批准了调用应用程序,则用户将立即进行身份验证并返回到回调 URL。

  2. 如果用户未登录 twitter.com 并且已批准调用应用程序,则会提示用户登录 twitter.com,然后立即进行身份验证并返回回调 URL。

  3. 如果用户登录 twitter.com 并且尚未批准调用应用程序,则会出现 OAuth 授权提示。然后,授权用户将被重定向到回调 URL。

  4. 如果用户未登录 twitter.com 并且尚未批准调用应用程序,系统将提示用户登录 twitter.com,然后在重定向回回调 URL 之前显示授权提示。

希望这符合要求并且适合您。