为什么steam web api returns undefined json value node js

Why steam web api returns undefined json value node js

您好,这些代码确实向 Steam Web 请求 API

const request = require("request");
request({
    url: "https://api.steampowered.com/IEconService/GetTradeOffers/v1/?key=MYAPIKEY&get_sent_offers=1&active_only=1&format=json",
json: true
}, (err, responser, body) => {
    console.log(body.response['trade_offers_sent']);
});

这就是它 returns:

{
  trade_offers_sent: [
    {
      tradeofferid: '3974708687',
      accountid_other: 82613664,
      message: 'test message',
      expiration_time: 1587017229,
      trade_offer_state: 9,
      items_to_give: [Array],
      is_our_offer: true,
      time_created: 1585807629,
      time_updated: 1585807629,
      from_real_time_trade: false,
      escrow_end_date: 0,
      confirmation_method: 2
    }
  ]
}

但是当我试图通过这种方式获取 accountid_other 的值时:

console.log(body.response['trade_offers_sent'].accountid_other);

它returns未定义

trade_offers_sent 中的方括号 [ ... ] 表示它包含一个数组而不是单个项目(它恰好是数组中的单个项目)。因此,要获得您感兴趣的价值,您需要指定所需项目的索引或使用循环遍历它。在这种情况下,你想要第一个项目,你可以使用 ['trade_offers_sent'][0] 来获得它。