LinqToTwitter - 总是IsAuthorized为ApplicationOnlyAut

2019-09-02 20:56发布

我有一个MVC4使用Web应用程序LinqToTwitter被访问用户的个人资料页面时显示的鸣叫,如果他们有一个Twitter手柄。

为此,我使用ApplicationOnlyAuthorizer:

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

我的问题是,我发现auth.IsAuthorized总是返回false,即使我有打电话Authorize()和我能够成功地让到Twitter电话。 还有,我发现,如果我叫Authorize()在给Twitter做出每一个电话,如果我重复调用足够的时间未处理的异常被抛出。

这似乎很重要的是,我能够知道如果我打这个电话给Twitter之前AUTH授权。 现在,我已经把速战速决,在那里我存储我自己IsAuthorized Session变量-但我不知道如何可靠,这是因为该Session变量可以活得比实际的认证本身?

在这个任何意见,将不胜感激。

Answer 1:

当您第一次授权,Twitter将返回一个承载令牌。 授权后,可以从auth.BearerToken财产抓住这一点。 在随后的调用,您可以重复使用相同的承载令牌。 承载令牌不会过期,除非你使它无效。 Twitter的建议是,你使用的承载令牌约15分钟,之后再重新授权。



文章来源: LinqToTwitter - IsAuthorized always returns false for ApplicationOnlyAuthorizer