2012-03-20 64 views
1

我在这找不到最近的答案。tweetsharp和api流?

Tweetsharp据报道在一些旧帖子中不支持来自Twitter用户流api的流式传输。然而,github展示了一个类似于它支持流式传输的类。

https://github.com/danielcrenna/tweetsharp/blob/cad16546df7c5be6ee528ecfa6171098b662a6ab/src/net40/TweetSharp.Next/Service/TwitterService.Streaming.cs

是否tweetsharp现在支持来自Twitter,在那里我学习C#和我会很感激有经验的编码器的观点之前,我继续花时间与工作没有

之前流tweetsharp。

+0

什么是你的问题? – 2012-03-20 00:09:50

+0

好点。 tweetsharp现在是否支持通过Twitter进行流式传输,在此之前它没有 – Damo 2012-03-20 00:11:30

+0

这可能会帮助你:[** TweetSharp - FluentTwitter去哪儿?](http://stackoverflow.com/questions/6587176/where-did- fluenttwitter-go) – bevacqua 2012-03-20 00:12:13

回答

5

如果你搜索的内容只Twitter's streaming API,可以实现它,而不需要外部库

JavaScriptSerializer serializer = new JavaScriptSerializer(); 

HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create("https://stream.twitter.com/1/statuses/sample.json"); 
webRequest.Credentials = new NetworkCredential("...", "..."); 
webRequest.Timeout = -1; 
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse(); 

StreamReader responseStream = new StreamReader(webResponse.GetResponseStream()); 
while (true) 
{ 
    var line = responseStream.ReadLine(); 
    if (String.IsNullOrEmpty(line)) continue; 

    dynamic obj = serializer.Deserialize<Dictionary<string, object>>(line); 

    if(obj["user"]!=null) 
     Console.WriteLine(obj["user"]["screen_name"] + ": " + obj["text"]); 

} 
+1

当你使用动态时,你为什么要'obj [“user”] [“screen_name”]'而不是'obj.user.screen_name'? – bevacqua 2012-03-20 01:36:28

+0

我开始考虑这个问题。感谢这个例子,我尝试了一下。 – Damo 2012-03-20 18:49:34

+0

不幸的是,事情并非如此简单。该API的v1.1是必需的,并且仅使用OAuth。有谁知道在哪里可以找到使用OAuth的C#中的status/sample.json阅读器? – MikeB 2013-06-29 02:14:20