通过twitter API调用获取用户推文不会返回media_url

时间:2014-06-28 22:17:51

标签: php twitter

我收到用户的推文,但没有在正确的twitter对象中的实体下获得media_url,即使API调用中的媒体也没有。为了测试我使用了这个用户twitterapi (https://twitter.com/twitterapi),我的API调用包括所有需要的参数,比如通过调试我的php应用程序看到的访问机密的消费者密钥。

但是当我在API控制台中测试这个网址https://api.twitter.com/1.1/statuses/user_timeline.json?count=10&screen_name=twitterapi时,我会看到entities.media.media_url字段和值。

哪里出错,是否有任何权限丢失?

3 个答案:

答案 0 :(得分:0)

推文可能分为三类:

  1. 无媒体 - 对于纯文本推文,实体密钥下不会有media_url条目。
  2. 单一媒体 - 实体密钥下将有一个media_url条目。
  3. 多媒体 - extended_entities 键下将有1个或更多条目,其中包含media_url键。在这种情况下,实体下也可能有一个media_url条目。
  4. 如果您处理所有这三种情况,您应该得到正确的结果。为了让自己更轻松,请将您的json结果转储到在线查看器中,例如http://www.jsoneditoronline.org,您应该能够清楚地看到结构。

答案 1 :(得分:0)

Tweeter更改了用于大文本推文的API,您必须在任何请求中添加“ tweet_mode”参数。

https://developer.twitter.com/en/docs/tweets/tweet-updates

GET /1.1/statuses/show.json?id=123&tweet_mode=extended HTTP/1.1

答案 2 :(得分:-1)