【发布时间】:2012-06-12 05:21:47
【问题描述】:
您好,有人知道如何使用 C# 的流式处理 API 吗?因此,每当我的帐户中有新推文时,它都会反映在我的程序中。
【问题讨论】:
标签: c# twitter oauth streaming
您好,有人知道如何使用 C# 的流式处理 API 吗?因此,每当我的帐户中有新推文时,它都会反映在我的程序中。
【问题讨论】:
标签: c# twitter oauth streaming
到目前为止,我在 .Net 领域找到的唯一 可靠 包装器是 TweetInvi。尽量忽略该网站看起来像是由一个活跃的 10 岁儿童设计的(感谢 MS 'metro' 团队),实际的库设计得非常好并且坚如磐石。
当然,假设您有相关的访问令牌(如果没有看到 http://dev.twitter.com),一个启动和运行是多么容易的例子:
TwitterCredentials.SetCredentials(userToken,userTokenPrivate,apiKey,apiKeyPrivate);
_userStream = Stream.CreateUserStream();
_userStream.TweetCreatedByFriend += (sender,args) => Console.WriteLine(args.Tweet.Text);
_userStream.Start();
这会将推文的正文写入您的控制台输出,并且它的更新速度甚至比打开实际的 Twitter 网站还要快。当一条推文被收藏、转发、当你有新的关注者等时,还会暴露其他事件。
我可以保证这个库是可靠的——我将它用于我的CovertTweeter 项目并且完全没有问题。事实上,通过 TweetInvi 访问流 API 比我在使用 Linq2Twitter 和 TweetSharp 等 REST 包装器时遇到的许多砖墙还要容易。
【讨论】:
看看这篇文章:
Streaming with New .NET HttpClient and HttpCompletionOption.ResponseHeadersRead
你没有完整的实现,但你会明白的。
【讨论】:
这是一个示例,“从 Twitter 流 API 读取数据并将其添加到 MSMQ。第二个进程(包括)从队列中读取,解析 json 消息,并更新数据存储。”
https://github.com/swhitley/TwitterStreamClient
您可以更改上述问题以在更新数据存储时生成事件。在您的程序中,您可以订阅此事件来做任何您想做的事情。
如果您正在寻找基于 OAuth 的示例,请使用“AuthPack”,它为 Twitter、Facebook、LinkedIn 和 Google 提供 .NET oAuth:
【讨论】:
我找到了一个很好的使用流 API 的示例代码,这里是 Twitterizer。
【讨论】: