仅在 Nuxt 中使用 Axios 和 Alphavantage.co 查询价格

问题描述 投票:0回答:1

所以我想查询带有alphavantage的股票的当前价格。但 Alphavantage 让我恢复了这一点:

{
    "Global Quote": {
        "01. symbol": "IBM",
        "02. open": "201.9400",
        "03. high": "205.0500",
        "04. low": "201.4300",
        "05. price": "203.5300",
        "06. volume": "3705004",
        "07. latest trading day": "2024-09-09",
        "08. previous close": "200.7400",
        "09. change": "2.7900",
        "10. change percent": "1.3899%"
    }
}

有谁知道我如何过滤它以仅获取当前价格的数量作为输出? 脚本如下:

<template>
  <div class="bg-gray-900 min-h-screen">
    <p class="text-gray-100 text-xl">
      {{stock}}
    </p>
  </div>
</template>

<script>
export default {
  async asyncData ({ $axios }) {
    const stock = await $axios.$get('https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=IBM&apikey=****')
    return { stock }
  }
}
</script>

在 NuxtJS 中使用 axios 和 alphavantage 查询股票的具体价值

vue.js axios nuxt.js api-key alpha-vantage
1个回答
0
投票

当您需要的结果包含在可以使用

stock['Global Quote']['05. price']
访问的较大 JSON 对象中时,您无需调整查询。 这是一些关于括号表示法属性访问的文档

您还可以迭代键值对,以防顺序无法保证

function getPrice(stock) {
  for (const [key, value] of Object.entries(stock['Global Quote'])) {
    if (key.includes('price')) {
      return value
    }
  }
  return null // price not found
}

const price = getPrice(stock)
© www.soinside.com 2019 - 2024. All rights reserved.