【问题标题】:How to retrieve an [object Object] value in a Twitter API response如何在 Twitter API 响应中检索 [object Object] 值
【发布时间】:2015-04-15 02:29:55
【问题描述】:

我目前正在使用 twitter API(twit npm 包),我目前正在收到这样的结构的响应

{ metadata: [Object],                                                                                                                                                                         
I20150213-22:24:29.155(0)?        created_at: 'Fri Feb 13 22:24:07 +0000 2015',                                                                                                                                               
I20150213-22:24:29.156(0)?        id: 566362206468845600,                                                                                                                                                                     
I20150213-22:24:29.156(0)?        id_str: '566362206468845569',                                                                                                                                                               
I20150213-22:24:29.157(0)?        text: 'Photo: New BTS picture from Mockingjay part  http://t.co/fo30mcLRYV',                                                                                                                
I20150213-22:24:29.158(0)?        source: '<a href="http://www.tumblr.com/" rel="nofollow">Tumblr</a>',                                                                                                                       
I20150213-22:24:29.158(0)?        truncated: false,                                                                                                                                                                           
I20150213-22:24:29.159(0)?        in_reply_to_status_id: null,                                                                                                                                                                
I20150213-22:24:29.159(0)?        in_reply_to_status_id_str: null,                                                                                                                                                            
I20150213-22:24:29.160(0)?        in_reply_to_user_id: null,                                                                                                                                                                  
I20150213-22:24:29.160(0)?        in_reply_to_user_id_str: null,                                                                                                                                                              
I20150213-22:24:29.161(0)?        in_reply_to_screen_name: null,                                                                                                                                                              
I20150213-22:24:29.161(0)?        user: [Object],                                                                                                                                                                             
I20150213-22:24:29.162(0)?        geo: null,                                                                                                                                                                                  
I20150213-22:24:29.162(0)?        coordinates: null,                                                                                                                                                                          
I20150213-22:24:29.163(0)?        place: null,                                                                                                                                                                                
I20150213-22:24:29.163(0)?        contributors: null,                                                                                                                                                                         
I20150213-22:24:29.164(0)?        retweet_count: 0,                                                                                                                                                                           
I20150213-22:24:29.288(0)?        favorite_count: 0,                                                                                                                                                                          
I20150213-22:24:29.289(0)?        entities: [Object],                                                                                                                                                                         
I20150213-22:24:29.289(0)?        favorited: false,                                                                                                                                                                           
I20150213-22:24:29.290(0)?        retweeted: false,                                                                                                                                                                           
I20150213-22:24:29.290(0)?        possibly_sensitive: false,                                                                                                                                                                  
I20150213-22:24:29.291(0)?        lang: 'en' },    

我正在尝试检索实体对象以访问其中的潜在媒体项,但是当我 console.log() 时,此数组 [object Object] 中的实体键被记录下来。如何访问对象的内部?我打算从这个对象内部提取一个图片 url,但我看不到里面有什么。根据 Twitter API 网站,媒体存储在实体对象中。

任何帮助将不胜感激。

【问题讨论】:

  • 我想几乎所有的浏览器控制台都允许你点击[object Object] 这样的东西来查看它下面的实际属性结构......

标签: javascript json api object twitter


【解决方案1】:

图像的 URL 存储在 REST 调用返回的 JSON 响应中的实体 media 中。

假设您要访问media_url 实体,只需按以下方式访问它

var result = the result from your call...
var imageUrl = result.entities.media.media_url;

并以任何你想要的方式使用媒体 URL。

如果您想检查媒体内容是否存在,只需使用if(result.entities.media.length &gt; 0)

【讨论】:

  • 在将推文对象分配给变量之前,是否有办法确保在 media_url 中包含某些内容?因为如果不是这样,我就会收到错误消息。
  • 出于某种原因,每次我尝试以您指定的方式记录 media_url 时,它仍然显示未定义。控制台.log(imageUrl.media_url);但它只是输出 console.log(result.entities.media) 并显示媒体对象没有问题。你知道这是为什么吗?
  • 可能有两个原因; a) 您在变量名的某处有错字,或者 b) media_url 实体是 undefined。您确定确实返回了媒体实体吗?你使用的是什么浏览器?为什么不在代码中放置一个断点并检查返回的结果呢?
猜你喜欢
  • 2021-12-25
  • 1970-01-01
  • 1970-01-01
  • 2020-11-02
  • 2015-08-02
  • 2014-05-20
  • 2020-06-16
  • 2020-11-07
  • 1970-01-01
相关资源
最近更新 更多