Cuando ejecuto este código obtengo la siguiente respuesta
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 es esta respuesta
{"nativePrice":{"value":"0","decimals":18,"name":"Binance Coin","symbol":"BNB"},"usdPrice":0,"exchangeAddress":"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73","exchangeName":"PancakeSwap v2"}ahora cuando trato de acceder a esos valores para usarlos en mi interfaz
//document.getElementById("tokenPriceUsd").innerHTML = usdPrice; console.log(y['nativePrice']['value']) document.getElementById("tokenPriceBnb").innerHTML = y['usdPrice'];yo obtengo
Uncaught (in promise) TypeError: y.nativePrice is undefinedNo puedo acceder a los valores y si uso x.json() solo obtengo el objeto promis
Sé que hay algunas preguntas sobre la búsqueda, pero aún no sé cómo acceder a los valores de mi respuesta.
Puede esperar hasta que se resuelva la promesa. Me gusta y = await x.json()
Usted puede encontrar esto útil también...
El objeto Response, a su vez, no contiene directamente el cuerpo de la respuesta JSON real, sino que es una representación de la respuesta HTTP completa. Entonces, para extraer el contenido del cuerpo JSON del objeto Respuesta, usamos el método json(), que devuelve una segunda promesa que se resuelve con el resultado de analizar el texto del cuerpo de la respuesta como JSON. Fuente