Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

234
Vistas
cómo obtener json de la API usando Vanilla JS a través de Protractor

Estoy tratando de descargar la distancia entre 2 ubicaciones desde tomtom api.

El transportador no me deja usar

*buscar - buscar no está definido - por favor use importar

*importación: no se puede usar la declaración de importación fuera del módulo

*cuando agrego

 { type: module }

a package.json: el transportador deja de funcionar, ya que ningún código completo es un módulo de ES

*browser.get: abre http con datos json, pero no puedo extraerlos.

¿Hay alguna otra manera? Intenté importar json a un archivo diferente y exportar response.data, pero el error del módulo me impide hacerlo también.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

No logré ejecutar node-fetch en mi script porque Protractor seguía rechazando la importación. Me las arreglé para resolverlo con require 'https'

 const https = require('https'); let measureDistance = async function(pickup, dropoff) { let url = `https://api.tomtom.com/routing/1/calculateRoute/${pickup[0]}%2C${pickup[1]}%3A${dropoff[0]}%2C${dropoff[1]}/json?routeType=shortest&avoid=unpavedRoads&key=uwbU08nKLNQTyNrOrrQs5SsRXtdm4CXM`; await https.get(url, res => { let body = ''; res.on('data', chunk => { body += chunk; }); res.on("end", () => { try { let json = JSON.parse(body); howFar = json.routes[0].summary.lengthInMeters; } catch (error) { console.error(error.message); } }).on("error", (error) => { console.error(error.message); }); }); };
También solía poner require en la parte superior del archivo como en Ruby, lo que parecía ser otro problema.

about 4 years ago · Juan Pablo Isaza Denunciar

0

El transportador es para probar páginas web angulares, pero puede hacer que el navegador ejecute javascript arbitrario, pero para usar fetch, necesita usar window

 function getTomTomData() { //replace this with your tomtom api call, and transform the response return window.fetch(TOM_TOM_URL); } browser.executeScript(getTomTomData).then(res=> { //do something with the response });
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda