Поле Twitter API «retweeted_status» в запросе «home_timeline» - PullRequest
1 голос
/ 06 декабря 2010

Я использую MGTwitterEngine + OAuth в своем приложении для iPhone. Все работает нормально, но когда я запрашиваю home_timeline of friends_timeline с опцией include_rt, я не получаю поле retweeted_status.

dev.twitter.com / док / получить / Статусы / home_timeline Ответ должен содержать структуру «retweeted_status» для ретвитов (как вы можете видеть в примере). Он описывает исходный твит, который был ретвитнут.

dev.twitter.com / консоль Если вы будете использовать Twitter Console - вы получите эту структуру успешно.

Но мое приложение получает эту структуру как пустую. Например, " \ n </ retweeted_status>". Все запросы работают отлично, кроме этого.

Кто-нибудь видел это? Какое решение?

PS: я нашел это http://www.mail-archive.com/twitter-development-talk@googlegroups.com/msg25383.html и несколько подобных дискуссий, но это безумие, если это правда. )

Спасибо.

1 Ответ

0 голосов
/ 31 января 2011

Я нашел ответ.Это было так просто.Движок SAOAuthTwitterEngine использует MGTwitterEngine, но позволяет ему использовать OAuth.Но этот движок использует MGTwitterEngine, созданный в 2008 году, когда MGTwitterEngine не знал о «retweeted_status», потому что эта функция появилась позже.

В любом случае.Все, что мне нужно было сделать - если добавить регистр [elementName isEqualToString: @ "retweeted_status"] для

  • (void) синтаксического анализатора: (NSXMLParser *) theParser didStartElement: (NSString *) elementName namespaceURI :(NSString *) namespaceURI квалифицированное имя: (NSString *) квалифицированное имя атрибута: (NSDictionary *) attributeDict

и

  • (void) синтаксический анализатор: (NSXMLParser *) theParser didEndElement :(NSString *) elementName namespaceURI: (NSString *) namespaceURI qualName: (NSString *) qName

методы в MGTwitterStatusesParser.m аналогично [elementName isEqualToString: @ "status"] case.

...