Чирикать и потоковое API?

Я не могу найти недавний ответ по этому вопросу.

Сообщается, что Tweetsharp в ряде старых постов не поддерживает потоковую передачу из потока пользователя API api. Однако github показывает класс, который, похоже, поддерживает потоковую передачу.

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

Поддерживает ли tweetsharp потоковую передачу из Twitter, где раньше этого не было

Я изучаю C#, и я был бы признателен за мнение опытного программиста, прежде чем я продолжу часами работать с tweetsharp.

1 ответ

Решение

Если вы ищете только потоковый API Twitter, вы можете реализовать его без необходимости использования внешней библиотеки.

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"]);

}
Другие вопросы по тегам