1

我正在使用 VS2012 Web 表单模板来构建一个访问 Twitter 的站点。所有登录都使用 OAuth 完成,并且仅针对 Twitter,但我想保留模板化外部登录框架,特别是“RegisterExternalLogin”页面,因为它为我处理本地成员身份问题。

在 RegisterExternalLogin 页面中,此代码

 var authResult = OpenAuth.VerifyAuthentication(redirectUrl);

很高兴地在 authResult.ExtraData['accesstoken"] 中为用户提供 AccessToken,这是我认为我需要的,但事实证明 LinqToTwitter 需要 2 个这样的令牌:

 SessionStateCredentials cred = new SessionStateCredentials
                    {
                        ConsumerKey = ConfigurationManager.AppSettings["twitterConsumerKey"],
                        ConsumerSecret = ConfigurationManager.AppSettings["twitterConsumerSecret"],
                        AccessToken = MyUsersAccessToken,
                        OAuthToken = [AnOAuthToken] //we no have?
                    };

其中 [AnOAuthToken] 是 .Net 的 OpenAuth 返回的 authResult 对象中似乎不存在的一段数据。

使用上述凭据 Linq2Twitter 在尝试基于用户的操作(如列表订阅)时返回“401 未授权”,我很确定它与缺少的 OAuthToken 值有关。

很确定我有一个错误的概念或遗漏了一些愚蠢的东西....任何指导表示赞赏!

4

0 回答 0