Esta URL devuelve JSON:
{
query: {
count: 1,
created: "2015-12-09T17:12:09Z",
lang: "en-US",
diagnostics: {},
...
}
}
Intenté esto, y no funcionó:
responseObj = readJsonFromUrl('http://query.yahooapis.com/v1/publ...');
var count = responseObj.query.count;
console.log(count) // should be 1
¿Cómo puedo obtener un objeto JavaScript de la respuesta JSON de esta URL?
javascript
json
Yiğit Doğuş Özçelik
fuente
fuente
Respuestas:
Puede usar la
.getJSON()
función jQuery :Si no desea utilizar jQuery, debe consultar esta respuesta para obtener una solución JS pura: https://stackoverflow.com/a/2499647/1361042
fuente
data
variable'Si desea hacerlo en javascript simple, puede definir una función como esta:
Y úsalo así:
Tenga en cuenta que
data
es un objeto, por lo que puede acceder a sus atributos sin tener que analizarlo.fuente
.onload = function() {
cuando puedes usar?.onreadystatechange = function() { if (xhr.readState === 4) {
Quiero decir, es más corto, pero estás sacrificando una gran cantidad de soporte para salvar un par de caracteres. Esto no es código golfCon Chrome, Firefox, Safari, Edge y Webview, puede usar de forma nativa la API de recuperación que hace que esto sea mucho más fácil y mucho más conciso.
Si necesita soporte para IE o navegadores anteriores, también puede usar el polyfill de búsqueda .
MDN: Fetch API
Aunque Node.js no tiene este método incorporado, puede usar node-fetch que permite la misma implementación exacta.
fuente
ES8 (2017) prueba
Mostrar fragmento de código
puedes manejar errores por try-catch
Mostrar fragmento de código
fuente
Axios es un cliente HTTP basado en promesas para el navegador y node.js .
Ofrece transformaciones automáticas para datos JSON y es la recomendación oficial del equipo de Vue.js al migrar desde la versión 1.0 que incluía un cliente REST por defecto.
O incluso
axios(url)
es suficiente ya que unaGET
solicitud es la predeterminada.fuente
Defina una función como:
Entonces úsalo así:
fuente
fetch
espera en este caso? Estoy confundido, sigo viendo ejemplos donde se espera y se llama claramenteEsta mañana, también tuve la misma duda y ahora está despejado, acababa de usar JSON con 'open-weather-map' ( https://openweathermap.org/ ) api y obtuve datos de la URL en el archivo index.html, el código se ve así:
Había dado una clave de API abiertamente porque tenía una suscripción gratuita, solo tenía una suscripción gratuita al principio. puedes encontrar algunas buenas claves y API gratis en "rapidapi.com"
fuente
Puede acceder a los datos JSON utilizando fetch () en JavaScript
Actualice el parámetro url de fetch () con su url.
Espero que ayude, funcionó perfectamente para mí.
fuente
fuente
fetch
ha sido mencionado en varias respuestas existentes.fuente
fetch
ha sido mencionado en varias respuestas existentes. El uso deawait/async
fetch se describió en la respuesta de Kamil .