是否可以从访问令牌检索用户的Twitter用户ID?

是否可以从访问令牌检索用户的Twitter用户ID?,twitter,twitter-oauth,access-token,userid,linq-to-twitter,Twitter,Twitter Oauth,Access Token,Userid,Linq To Twitter,让我解释一下我的问题,目前我使用LinqToTwitter来执行用户授权 我的网站上有“连接Twitter”按钮,当用户单击它时,一个ajax请求请求执行授权的方法,用户被重定向到: "https://api.twitter.com/oauth/authorize?oauth_token=" 然后输入他的登录名和密码 一旦完成,他将被重定向到我网站的URLreferer,我将收到我需要的字段,如用户名、用户ID等 然后,如果社交网络用户的用户名与我数据库中的任何条目都不匹配,我会打开一个弹出

让我解释一下我的问题,目前我使用LinqToTwitter来执行用户授权

我的网站上有“连接Twitter”按钮,当用户单击它时,一个ajax请求请求执行授权的方法,用户被重定向到:

"https://api.twitter.com/oauth/authorize?oauth_token=" 
然后输入他的登录名和密码

一旦完成,他将被重定向到我网站的URLreferer,我将收到我需要的字段,如用户名、用户ID等

然后,如果社交网络用户的用户名与我数据库中的任何条目都不匹配,我会打开一个弹出窗口询问他的电子邮件(电子邮件是必填字段)

然后,一旦用户确认了电子邮件,我就必须通过发出ajax请求connectSocialUser(用户ID、化身、accessToken)将他连接到我们的网站

对于Google和Facebook,我在参数中加入了访问令牌,然后分别请求这两个URL:

"https://graph.facebook.com/me?fields=id&access_token="
"https://www.googleapis.com/oauth2/v1/userinfo?access_token="
这两个URL返回用户ID,通过简单的比较,我可以知道用户是好的,而不是篡位者

所以我的问题是: 是否可以从访问令牌检索用户的userid

如果没有,我如何才能让它工作


多谢各位

完成授权后,LINQ to Twitter将填充auth.Credentials.UserId属性。您也可以在那里找到屏幕名。

您正在寻找的


除其他外,您将收到当前访问令牌的“id”(用户id)

我想你没有完全理解我的要求。事实上,正如您所说,我首先填充auth.Credentials,但在那之后,我必须请求用户的电子邮件,因为您知道Twitter不允许这样做。因此,我必须做一个新的服务器请求,但我不能,因为我请求的两个OAuth令牌和令牌验证器已不再有效,我也没有存储accessToken和AccessTokenSecret。我认为对我来说唯一的解决方案,我希望你能回答我,那就是在数据库访问令牌机密是否可能更改或始终保持不变?那AccessToken呢?很抱歉,到目前为止,我一直在客户端对其他社交网络的API调用进行访问,到目前为止,在这种情况下,accessToken经常更改。@DavidSaute Twitter OAuthToken/accessToken没有更改。因此,您可以将它们与UserID一起保存,并通过将所有4个令牌添加到授权人的凭据中,在后续请求中重用它们。是否有此端点的替代方案?我发现对该端点的GET调用比其他类似调用慢约500倍。