繁体   English   中英

Response.data如何获取单个数据值

[英]Response.data how to get a single data value

这是我用来尝试从 api 的 data.response 中获取单个元素的代码:

client.on("message", msg => {
  var axios = require("axios").default;

var options = {
  method: 'GET',
  url: 'https://dad-jokes.p.rapidapi.com/random/joke',
  headers: {
    'X-RapidAPI-Host': 'dad-jokes.p.rapidapi.com',
    'X-RapidAPI-Key': '0f787e5af5msh468814e0b585173p1cacafjsn7d774dfb44ff'
  }
};
  if(msg.content === "daddy"){
    axios.request(options).then(function (response) {

      console.log(response.data);
      let dataDad = response.body
        msg.channel.send(`${dataDad}`)
  })`

这是我从 api 得到的回复:

{
  success: true,
  body: [
    {
      _id: '60dd3729df8a37528bc79b03',
      setup: 'How often do scientists check the table of elements?',
      punchline: 'Periodically',
      type: 'periodical',
      likes: [],
      author: [Object],
      approved: true,
      date: 1618108661,
      NSFW: false
    }
  ]
}

如何在 msg.channel.send( "the "setup" ) 的代码中使用响应数据中的"setup"?

我相信,您需要执行response.data.body[0].setup才能获得第一个对象setup属性

msg.channel.send(response.data.body[0].setup);

response.data.body是一个对象数组。 因此,如果您想访问该数组中的第一个 object,您可以使用response.data.body[0]因此,要从该 object 获取.setup属性,您可以使用:

msg.channel.send(response.data.body[0].setup);

这将为您提供response.data.body数组中第一个 object 的setup属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM