Клуб API Карт

Ошибка при геокодировании на серверной стороне..

Alexander Gorlov
19 сентября 2014, 17:32

На Node.js крутится приложение, которое должно отдавать результаты геокодирования.

Если есть неверный текст для поиска, то создаётся ошибка "TypeError: Cannot read property 'GeoObject' of undefined" в результатах на неверном поиске и далее на всех. В документации это кратко обозначено, но я не понял как можно обработать данную ошибку.

Прошу подсказать, как решить проблему, или тыкнете в документацию. Спасибо.

Листинг:

var MultiGeocoder = require('multi-geocoder'),
geocoder = new MultiGeocoder({ coordorder: 'latlong', lang: 'ru-RU' });

exports.get = function (req, res, next) {
var data = [
'ertewrtewrt',
'Москва, 1-ая Квесисская ул., д 18',
'Москва, 1-й Тверской-Ямской пер, д.16'
];



geocoder.geocode(data)
.then(function (result) {
console.log(result);
res.json(result);
})
.fail(function (err) {
console.log('error', err);
});

2 комментария

1. Я обновил модуль (версия 0.1.0) 

теперь он возвращает объект с 2-мя полями:

result – GeoJSON (то что было раньше)

errors – Массив ошибок, возникших при геокодировании

 

Обращаю внимание, что использовать этот модуль для геокодирования адресов "на лету" – плохое решение. Лучше сохранить координаты для ваших объектов в БД или другом месте

Во! Спасибо, так намного удобнее...

 

Про "на лету" понятно.