由于属性不同,从 api 调用中检索数据时出错

Posted

技术标签:

【中文标题】由于属性不同,从 api 调用中检索数据时出错【英文标题】:Error retrieving data from api call as attribute is different 【发布时间】:2021-11-12 17:56:14 【问题描述】:

您好,我正在使用一个返回如下的 api

"secret-finance":"usd":0.04883396

问题是我正在使用 vue 并检索这样的数据

async getCurrentSefiPrice() 
  await axios
    .get(
      "https://api.coingecko.com/api/v3/simple/price?ids=secret-finance&vs_currencies=usd"
    )
    .then(
      (response) =>
        (this.sefi_token_current_price = response.secret-finance.usd)
      // console.log(response)
    );
  console.log(this.sefi_token_current_price);

但是当我使用secret-finance 获取美元值时,我得到一个错误。 提前致谢。

【问题讨论】:

【参考方案1】:

@haseebsaeed 您需要将其引用为

response["secret-finance"].usd

当键中有连字符时,您需要使用键表示法而不是点表示法。任何包含 javascript 变量中不允许的字符的键都需要像上面那样引用它们。

另一个例子, 如果secret-finance 对象的属性键为us-dollars 而不是usd 的当前属性键,那么您可以通过以下方式访问它,

response["secret-finance"]["us-dollars"]

【讨论】:

以上是关于由于属性不同,从 api 调用中检索数据时出错的主要内容,如果未能解决你的问题,请参考以下文章

尝试从 h2 数据库中检索 json 数据时出错

在 android 中调用 httpget 时出错(检索 google 方向)

检索通过输入属性传递给子组件的值

由于日期格式,将数据从 txt 文件导入 IBM netezza SQL 数据库时出错

存储和检索API调用的数据

无法从 c 中的不同函数从 GDBM 数据库中检索数据