在不使用OAuth的情况下,如何在web应用程序中获取当前经过身份验证的Twitter用户的ID?

在不使用OAuth的情况下,如何在web应用程序中获取当前经过身份验证的Twitter用户的ID?,twitter,oauth,twitter-oauth,tweetsharp,Twitter,Oauth,Twitter Oauth,Tweetsharp,*在此之前,我为漫长的背景道歉,但我认为,一旦回答了这个问题,这对其他开发人员来说是必要和有益的 背景 我正在构建一个非常社会化的web应用程序,其中有几个事件会触发社会行为,例如更新用户的Twitter状态 目前,我使用一个名为“TweetMoaSharp”(.NET)的库来处理Oauth工作流和事件,只要用户被短暂重定向到Twitter身份验证页面,这些工作流和事件就会触发状态更新或后续操作。 要澄清的是,每次都不会要求用户重新授权我的应用程序,但当用户被定向到Twitter,然后返回到我的

*在此之前,我为漫长的背景道歉,但我认为,一旦回答了这个问题,这对其他开发人员来说是必要和有益的

背景 我正在构建一个非常社会化的web应用程序,其中有几个事件会触发社会行为,例如更新用户的Twitter状态

目前,我使用一个名为“TweetMoaSharp”(.NET)的库来处理Oauth工作流和事件,只要用户被短暂重定向到Twitter身份验证页面,这些工作流和事件就会触发状态更新或后续操作。

要澄清的是,每次都不会要求用户重新授权我的应用程序,但当用户被定向到Twitter,然后返回到我的应用程序时,会出现一个难看的闪烁,持续1-2秒。这会让最终用户感到恼火,因为Twitter上的互动频繁

因此——为了缓解这种情况,我使用TweetMoaSharp通过服务器获取OAuth访问令牌,然后将该令牌与从Twitter返回的用户id一起存储在我的数据库中。然后,我在客户机上设置了一个cookie,其中包含用户的Twitter Id,这样,对于将来的请求,我可以简单地将该Id传递给服务器,从数据库中获取OAuth令牌,然后处理我的业务。不需要重定向

问题解决了,对吗? 嗯,不。愚蠢的是,我忽略了这样一个事实,即这可能会导致与同一页面上使用的多个Twitter帐户发生冲突,并最终将测试推文发送到我拥有的第二个Twitter帐户,因为我更改了推特会话。这可能发生在从同一浏览器访问多个Twitter帐户的任何用户身上;比如一对夫妻

回到绘图板上 我对自己说,“Facebook JavaScript API”使获得当前登录用户的id变得超级容易,而无需经过一系列服务器端令牌步骤,因此我相信Twitter也提供了同样的方法。“哈!我还没有找到一个。”

底线/问题 如何获取当前已验证的Twitter用户的ID而不将其重定向到Twitter(即使只有一秒钟)?如果我能做到这一点,那么我可以将返回的ID与cookie中的ID进行比较,并知道它是否对我的应用程序的当前会话有效,或者我是否需要对该(新)用户进行身份验证以避免“在错误的帐户下“推特”


提前感谢。

使用你的应用代币来完成

返回的信息是登录的用户


不幸的是,每15分钟的通话时间限制为15次!

使用您的应用代币执行以下操作

返回的信息是登录的用户


不幸的是,每15分钟只能打15个电话!

您可能会在twitter开发者论坛上找到更多帮助您可能会在twitter开发者论坛上找到更多帮助