如何告诉 JS 我的 api fetch 链接不正确?

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

所以我遇到了某些 API 的问题,其中无效链接仍然“正常”。这里的股票代码我输入了一堆随机字母来代替实际的股票代码:...

ticker=AAsdfsPL
...而不是...
ticker=AAPL
...API 链接本身仍然不会产生一个错误,即使它并没有真正获取任何数据。有什么办法可以解决这个问题,还是我需要使用不同的 API?

const resStock = await fetch(
      `https://api.polygon.io/v3/reference/tickers?ticker=AAsdfsPL&active=true&apiKey=6P2qV_oNdXnkkmnd5Vb5VtQWi09OIzfU`
    );
    console.log(resStock.ok); //still returns true even though link doesn't do anything.
javascript api asynchronous error-handling
2个回答
0
投票

您可以区分

result
是否包含数据

const resStock = await fetch(
   `https://api.polygon.io/v3/reference/tickers?ticker=AAsdfsPL&active=true&apiKey=6P2qV_oNdXnkkmnd5Vb5VtQWi09OIzfU`
)

if(resStock.data.results){
  //do the next steps
}
else {
   // you are not getting data, so throw error if you want to 
}

0
投票

在这种特殊情况下,您可以检查返回的 JSON 中的

count
属性以确定结果是否有效:

(async function () {
  const resStock = await fetch(
    `https://api.polygon.io/v3/reference/tickers?ticker=AAPsL&active=true&apiKey=6P2qV_oNdXnkkmnd5Vb5VtQWi09OIzfU`
  );
  const json = await resStock.json();
  const isOk = !!json.count;
  console.log(isOk);
})();

© www.soinside.com 2019 - 2024. All rights reserved.