从获取响应访问数据



当我运行此代码时,我得到的响应低于

getText(priceUrl, options)
async function getText() {
let x = await fetch(priceUrl, options);
let y =  x.text()
document.getElementById("demo").innerHTML = y;
//document.getElementById("tokenPriceUsd").innerHTML = usdPrice;
console.log(y['nativePrice']['value'])
document.getElementById("tokenPriceBnb").innerHTML = y['usdPrice'];

}

y这个响应是吗

{"nativePrice":{"value":"0","decimals":18,"name":"Binance Coin","symbol":"BNB"},"usdPrice":0,"exchangeAddress":"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73","exchangeName":"PancakeSwap v2"}

现在,当我尝试访问这些值以在我的前端中使用它们时

//document.getElementById("tokenPriceUsd").innerHTML = usdPrice;
console.log(y['nativePrice']['value'])
document.getElementById("tokenPriceBnb").innerHTML = y['usdPrice'];

我得到

Uncaught (in promise) TypeError: y.nativePrice is undefined

我无法访问这些值,如果我使用x.json((,我只能返回promis对象

我知道有一些关于获取的问题,但我仍然不知道如何从我的响应中访问值

阅读Response.json((

你可能会发现这也很有帮助。。。

Response对象反过来不直接包含实际的JSON响应体,而是整个HTTP响应的表示。因此,为了从Response对象中提取JSON主体内容,我们使用JSON((方法,该方法返回第二个promise,该promise将响应主体文本解析为JSON。源

您可以等待,直到承诺得到解决。类似y = await x.json()

最新更新