gifts2017

Ввод адреса с автодополнением и подбором, вывод в формате КЛАДР 9 запятых (kladr-api.ru)

Опубликовал Сергей К. (eskor) в раздел Обработки - Универсальные обработки

Пример получения данных с сайта kladr-api.ru в формате JSON
Трудно не заметить, что в сети набирают популярность api-сервисы ввода корректного адреса. В моем случае стояла задача прикрутить подобный механизм к самописным формам. Разобрав возможные варианты, например вот этот, я решил сделать обработку с простейшим интерфейсом и работающий с бесплатным сервисом. 
Обработка при модальном вызове возвращает строку адреса в формате "9 запятых".
Вариант не оптимизированный, зато проще понять принцип работы. Автодополнение срабатывает при наличии единственного варианта в ответе сервера, по нажатию "Enter" вываливается список найденных вариантов. Соответственно поиск ведется по иерархии: город-улица-дом.
Чтоб попасть в настройки - нужно в поле "поиск города" ввести "eskor".
Принцип работы построен на отправке GET запроса и разборе строки ответа в JSON. Запросы к сервису начинаются от 3х введенных символов в полях поиска города и улицы, и одного символа в поле дом. Плюс работают все "фишки" сервиса, например автоматическое определение языка ввода и вывод доступных значений с использованием символа "*"(город и улица соответственно "***").
Желательно получить token и ключ после регистрации на сайте "kladr-api.ru", хотя сейчас работает и со случайными символами. 

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Файл обработки
.epf 16,00Kb
27.08.14
51
.epf 1.0 16,00Kb 51 Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение

Комментарии

1. Сергей (seermak) 29.08.14 04:39
(0)"РаскодироватьДжексона()" - как-то звучит двусмысленно))
2. Сергей (seermak) 29.08.14 15:26
(0)еще = боится городов-героев = смотри рисунок
Прикрепленные файлы:
3. Сергей К. (eskor) 29.08.14 23:45
(1) seermak, да в общем если назвать функцию "ВернутьКирилическоеПредставлениеСимвольнойСтрокиВJSON" быстрее она не заработает, это факт. Имена функций и переменных должны помогать разобраться алгоритм читающему код, а таких не так много. Кстати, обработка уже трудится во всю, заказчик поднял своё зеркало, благо все исходники выложены.
4. Сергей (seermak) 30.08.14 20:00
(3) да я просто разобрался с обработкой (и переделал под себя) - еще глюк - если район и населенный пункт - населенный пункт забрасывает в город; если проверять после формирования адреса в "родной" ввод адресной информации - адрес отображается неправильно. Но за идею +
5. Сергей К. (eskor) 31.08.14 02:11
Значит я все сделал правильно. На самом деле я делаю код, чтоб был понятен.Есть вариант ускорения ответа, правда немного геморный, но оно того стоит. Главное разобрать ответ. На самом деле обработку выложил из уважения для создателей самого сервиса, парни сделали серьёзное подспорье в работе с классификаторами. Дай бог им успехов.
6. reznic Резник (reznic) 07.12.14 21:19
(3) eskor, поясните что значит поднял свое зеркало? купил у них коробку?

(4) seermak, своим вариантом поделитесь?
7. Сергей К. (eskor) 07.12.14 22:01
(6) Да нет. Они же исходники в открытом доступе держат. Наши спецы по сайтам свой севис подняли.
8. pallid *** (white_sochi) 01.09.15 12:44
Я так понял uid получить нельзя через kladr-api, или я что-то где-то упустил?
9. Сергей К. (eskor) 02.09.15 11:47
(8) white_sochi, попробуй посмотреть полный текст ответа сайта. Может и найдешь, что тебе надо. Я забирал только те ключи, которые мне были нужны. Сам сервис тоже на месте не стоит, пробуй, все в твоих руках.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа