Можно ли использовать api-библиотеку google.maps на стороне сервера node.js?

Я работаю над приложением Google Maps, которое использует карту google map3 api, в частности методы утилиты в google.maps.geometry.encoding, такие как decodePath, encodePath, computeDistanceBetween, интерполировать, чтобы вычислить, где места

В первой версии веб-приложения большая часть логики приложения находится в веб-браузере, и теперь я хочу переместить некоторую логику на сервер node.js. однако, поскольку приложение зависит от google api, мне интересно, есть ли способ, которым я все еще могу использовать google map api на сервере node.js

заблаговременно

Ответ 1

Вы можете использовать модуль, например node -googlemaps https://github.com/moshen/node-googlemaps, который уже обернул API для вас. Или вы можете использовать любой модуль node, который поможет вам выполнить запросы API:

Запрос Mikeal: https://github.com/mikeal/request

Restler: https://github.com/danwrong/restler

Хотя, я точно не знаю о методах утилиты.

Ответ 2

Я не нашел способ загрузки и использования геометрии из карт google в node.js Но я нашел небольшой модуль npm geolib, который может выполнять некоторые вычисления. Я сравнил результаты с модулем и с библиотекой геометрии карт Google, и они совпадают. Надеюсь, вы сочтете это полезным.

Ответ 3

СЛЕДУЙТЕ ЭТИМ ШАГОВЫМ ИНСТРУКЦИЯМ

  1. Запустите эту команду в терминале npm install @google/maps --save

  2. Копировать Вставить этот код

    var googleMapsClient = require('@google/maps').createClient({
      key: xxxxxxxxxx
    });
    
    function getDirections (req, callback)  {
      googleMapsClient.directions({
      origin: req.origin,
      destination: req.destination,
      mode: req.mode,
    
      }, function(err, response) {
        console.log(err);
        console.log(response);
        if (!err) { 
          callback(response);
        };
      });
    };
    
    var inputs = {
      origin: "1600 Amphitheatre Parkway, Mountain View, CA",
      destination: "1 Infinite Loop, Cupertino, CA 95014, USA",
      mode: "driving",
    };
    
    getDirections(inputs, function(result){
      console.log("Response: ", JSON.stringify(JSON.parse(JSON.stringify(result))))
    });
    

Для дальнейшего чтения https://github.com/googlemaps/google-maps-services-js