рассчитать расстояние между двумя точками с помощью Mapquest, пока местоположение написано на иврите - PullRequest
0 голосов
/ 06 августа 2020

Я пытаюсь рассчитать расстояние между двумя точками на иврите с помощью Mapquest. Я следовал документации API направления в https://developer.mapquest.com/documentation/directions-api/route-matrix/post/.

Это то, что я пытаюсь запустить:

  let request = require('request')

  let postData = {
    "locations": [
      "החשמונאים, תל אביב",
      "דרך השלום, תל אביב"
    ],
    "options": {
      "allToAll": false,
      "unit": "k",
      "locale": "he_IL",
    }
  }

  let url = 'http://www.mapquestapi.com/geocoding/v1/address?key=mykey'
  let options = {
    method: 'post',
    body: postData,
    json: true,
    url: url
  }
  request(options, function (err, res, body) {
    if (err) {
      console.error('error posting json: ', err)
      throw err
    }
    let headers = res.headers
    let statusCode = res.statusCode

    console.log('body: ', body)
  })

Вот ответ:

body:  {
  allToAll: false,
  distance: [ 0, 0 ],
  locations: [
    {
      dragPoint: false,
      displayLatLng: [Object],
      adminArea4: '',
      adminArea5: '',
      postalCode: '',
      adminArea1: 'IL',
      adminArea3: '',
      type: 's',
      sideOfStreet: 'N',
      geocodeQualityCode: 'A1XAX',
      adminArea4Type: 'County',
      linkId: 282934907,
      street: '',
      adminArea5Type: 'City',
      geocodeQuality: 'COUNTRY',
      adminArea1Type: 'Country',
      adminArea3Type: 'State',
      latLng: [Object]
    },
    {
      dragPoint: false,
      displayLatLng: [Object],
      adminArea4: '',
      adminArea5: '',
      postalCode: '',
      adminArea1: 'IL',
      adminArea3: '',
      type: 's',
      sideOfStreet: 'N',
      geocodeQualityCode: 'A1XAX',
      adminArea4Type: 'County',
      linkId: 282934907,
      street: '',
      adminArea5Type: 'City',
      geocodeQuality: 'COUNTRY',
      adminArea1Type: 'Country',
      adminArea3Type: 'State',
      latLng: [Object]
    }
  ],
  time: [ 0, 0 ],
  manyToOne: false,
  info: {
    statuscode: 0,
    copyright: {
      imageAltText: '© 2020 MapQuest, Inc.',
      imageUrl: 'http://api.mqcdn.com/res/mqlogo.gif',
      text: '© 2020 MapQuest, Inc.'
    },
    messages: []
  }
}

Он не может распознать адреса, но я вижу, что это возможно, потому что, когда я ввожу те же адреса в инструмент «Lat / Lng Finder» (https://developer.mapquest.com/documentation/tools/latitude-longitude-finder/), он дает мне нужное место. это даже дает мне правильное расстояние, когда я использую широту и долготу вместо названия места.

Что я делаю не так?

1 Ответ

0 голосов
/ 07 августа 2020

Попробуйте использовать для адресов 5-сегментный формат. Это будет выглядеть примерно так: местоположения: [{улица: "3601 Уолнат-стрит", город: "Денвер", штат: "CO", почтовый индекс: "80205", страна: "США"}, {улица: "1555 Блейк St ", город:" Denver ", штат:" CO ", postalCode:" 80202 ", страна:" US "}]

...