Получение пустого ответа от HERE GEO API с помощью fetch i Node.js - PullRequest
0 голосов
/ 14 июля 2020

Я пытаюсь отправить запрос к Geo API «ЗДЕСЬ» из кода node.JS и получаю пустой ответ
Это то, что я делаю:

const fetch = require('node-fetch');
const http = require('http');
const https = require('https');
const keepAliveAgent = new https.Agent({
    keepAlive: true
});

var lat = '43.293162'
var long = '-85.920004'
var endpoint = 'https://revgeocode.search.hereapi.com/v1/revgeocode?at=' + lat + '%2C' + long + '&apiKey={API_key}'
console.log(endpoint)
here = async function (endpoint) {
    var start_time = new Date().getTime();

    let response = await fetch(endpoint, {
        method: 'GET',
        agent: keepAliveAgent

    });
    console.log(response)
    var time = { 'Here Response': + (new Date().getTime() - start_time) + 'ms' };
    console.log(time)
    return [response.json(), time];

}

Ответ:

[
    {},
    {
        "Here Response": "781ms"
    }
]

Когда я использую тот же URL с запросом GET в почтальоне, я получаю правильный ответ введите описание изображения здесь Что я делаю не так?

1 Ответ

0 голосов
/ 19 июля 2020

Я использовал этот код, и он сработал
Спасибо

const fetch = require('node-fetch');
const http = require('http');
const https = require('https');
const keepAliveAgent = new https.Agent({
    keepAlive: true
});

var lat = '43.293162'
var long = '-85.920004'
var endpoint = 'https://revgeocode.search.hereapi.com/v1/revgeocode?at=' + lat + '%2C' + long + '&apiKey={API_key}'
console.log(endpoint)
here = async function (endpoint) {
    var start_time = new Date().getTime();

       let response = await fetch(endpoint, {
      method: 'GET',
      redirect: 'follow',
      agent: keepAliveAgent ,
      
    })
  let data = await response.json()
  console.log(data) 
  var time = { 'Here Response': + (new Date().getTime() - start_time) + 'ms' };
  console.log(time)
  return [data];

}
...