让我解释一下我的问题,目前我使用 LinqToTwitter 来执行用户授权。
我的网站上有“连接 Twitter”按钮,当用户单击它时,ajax 请求会请求执行授权的方法,用户将重定向到:
"https://api.twitter.com/oauth/authorize?oauth_token="
然后输入他的登录名和密码。
完成后,他会重定向到我网站的 urlReferrer,我会收到我需要的字段,例如用户名、用户 ID,...
然后,如果社交网络用户的 UserId 与我的数据库中的任何条目都不匹配,我会打开一个弹出窗口来询问他的电子邮件(电子邮件是必填字段)
然后,一旦用户确认了电子邮件,我就必须通过发出 ajax 请求 connectSocialUser(userid, avatar, accessToken) 在我们的网站中连接他。
对于 Google 和 Facebook,我已将访问 token 放入参数中,然后分别请求这两个网址:
"https://graph.facebook.com/me?fields=id&access_token="
"https://www.googleapis.com/oauth2/v1/userinfo?access_token="
这两个网址给我返回了用户 ID,通过简单的比较我可以知道该用户是好人,而不是篡夺者。
所以我的问题是: 是否可以从访问 token 中检索用户的用户 ID?
如果不是,我怎样才能让它发挥作用?
非常感谢!
最佳答案
您正在寻找GET account/verify_credentials .
您将收到当前访问 token 的“id”(user_id)等。
关于twitter - 是否可以从访问 token 中检索用户的 Twitter 用户 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19140768/