8

我正在尝试使用仅应用程序身份验证(无用户上下文)从服务器端应用程序检索公共推文。

以下代码工作正常:

var service = new TwitterService("<consumer key>", "<consumer secret>");
service.AuthenticateWith("<access token>", "<access token secret>"); 

var options = new ListTweetsOnUserTimelineOptions { ScreenName = "billgates" };

foreach (var tweet in service.ListTweetsOnUserTimeline(options))
    Console.WriteLine(tweet.Text);

但是,我从该图中收集到不必提供访问令牌/秘密:

仅应用程序身份验证

但是,当我删除对 的调用时AuthenticateWithListTweetsOnUserTimeline返回 null。

这是图书馆的限制,如果不是,我该怎么办?

编辑

据我所知,这调用了GET statuses/user_timeline应该支持仅应用程序身份验证的方法,根据文档

支持这种形式的身份验证的 API 方法将在其文档中包含两个速率限制,一个是每个用户(用于应用程序用户身份验证),另一个是每个应用程序(用于这种形式的仅应用程序身份验证)

GET statuses/user_timeline方法在其文档中显示了这两个限制。

4

2 回答 2

1

我认为这不是库的限制,而是 Twitter API 的限制。

据我所知, ListTweetsOnUserTimeline() 方法使用 statuses/user_timeline API 调用。

获取状态/用户时间线

如您所见,此调用需要身份验证。

您可以尝试使用 Streaming API 来获取状态。我在这里帮不了你,因为我只有用户流的经验,而不是公开的。

公共流

此外,TweetSharp 在流方面存在一些问题,我不得不切换到 Linq2Twitter 库。

于 2013-03-13T07:53:52.200 回答
1

这被确认为不受支持: https ://github.com/danielcrenna/tweetsharp/issues/80#issuecomment-19862455

由于该项目即将退役,因此没有计划增加对它的支持。

于 2013-06-23T23:12:13.510 回答