首页 文章

LinqToTwitter - IsAuthorized始终为ApplicationOnlyAuthorizer返回false

提问于
浏览
1

我有一个 MVC4 Web应用程序使用 LinqToTwitter 在访问用户的 Profiles 页面时显示推文,如果他们有Twitter句柄 .

为此,我使用ApplicationOnlyAuthorizer:

var auth = new ApplicationOnlyAuthorizer
{
  Credentials = new InMemoryCredentials
  {
    ConsumerKey = "twitterConsumerKey",
    ConsumerSecret = "twitterConsumerSecret"
  }
};
auth.Authorize();

我的问题是,我发现 auth.IsAuthorized 总是返回false,即使我已经调用 Authorize() 并且我成功地能够拨打Twitter . 而且,我发现如果我在每次调用Twitter时调用 Authorize() ,如果我重复呼叫足够多次,则会抛出未处理的异常 .

在我打电话给Twitter之前,我能够知道auth是否被授权似乎非常重要 . 现在,我已经快速修复了我存储自己的 IsAuthorized Session 变量 - 但我不确定这是多么可靠,因为 Session 变量可能比实际的身份验证本身更长?

对此有任何建议将不胜感激 .

1 回答

  • 2

    您第一次授权时,Twitter将返回持票人令牌 . 授权后,您可以从auth.BearerToken属性中获取此属性 . 在后续呼叫中,您可以重复使用相同的承载令牌 . 承载令牌不会过期,除非您使其无效 . Twitter的建议是你使用持票人令牌约15分钟,然后再重新授权 .

相关问题