所以我遇到了某些 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.
您可以区分
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
}
在这种特殊情况下,您可以检查返回的 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);
})();