Estoy creando un proyecto de aplicación de noticias que extrae datos JSON de una API.
La biblioteca API proporciona un enlace a la "historia completa".
¿Cómo cambio la dirección de window.open() cuando la URL es esencialmente una ubicación de matriz dentro de un archivo JSON?
Heres mi solución hasta ahora
HTML
<button onclick="newWindow()">Click for full story</button>JavaScript
function newWindow(){ window.open(data.news[0].url) }JSON
{ "status": "ok", "news": [ { "id": "4e6", "title": "Soccer team wins the World Cup" "url": "wwww.newsnetwork.com/soccer-team-wins-the-world-cup" ...Puede usar la función fetch incorporada de javascript para obtener lo que su API está devolviendo. Después de eso, debe convertirlo en un objeto (JSON) para acceder a sus propiedades.
Nota: No olvide manejar los errores en caso de que la API no funcione o falte su URL, puede hacer todo eso en el .catch
function newWindow() { fetch("http://example.com/movies.json") .then(response => response.json()) .then((data) => { window.open(data.news[0].url); }) .catch((error) => console.error("oops:",error)); }