SBP (метод)

Материал из post-API.ru
Перейти к: навигация, поиск

Данный метод (аббр. - Streets By Part) предназначен для получения списка улиц конкретного города, подходящих под введенный пользователем фрагмент названия.

Метод может быть использован следующим образом.

  • После получения кода города в методе CBP (значение cityid), этот код города передется в настоящий метод. По мере ввода пользователем фрагмента улицы, под полем ввода появляется выпадающий список, в котором отображается список подходящих улиц. При этом удовлетворяющий условию фрагмент - подсвечивается.

Версия API

 Версия 2.0

Вызов

 http://post-api.ru/api/v2/sbp.php?cityid=cda74a83-ae08-4ba2-b01c-c6fc373222cb&street=лен&apikey=dev&d=1&limit=20&full=0&hl=1 
 http://post-api.ru/api/v2/sbp.php?cityid=cda74a83-ae08-4ba2-b01c-c6fc373222cb&street=лен&apikey=dev&d=1&limit=20&full=1&hl=1 


Параметры

Ключ Обязательный Описание
cityid О Код города, полученный в методе CBP.
street О Фрагмент наименования улицы. В зависимости от ключа full, будет осуществлен поиск по начальным или любым фрагментам улицы. Название улицы может вводиться без учета регистра.
limit Н Количество возвращаемых улиц. По умолчанию 50.
full Н Если установлен в 0 (по умолчанию), то поиск осуществляется с первых символов (т.е. при маске "лен" - "Кривоколенный переулок" найден не будет). При значении, равном 1 поиск осуществляется в любом месте названия улицы.
hl Н Если установлен в 1 (значение по умолчанию - 0), то в итоговом результате все вхождения поисковой строки будут обрамлены тегом .
apikey О Ключ доступа к API.
d Н Отладочный режим.


Возвращаемое значение

С использованием этого метода связан следующий массив-ответ: SBPv2_content.

Успешное выполнение запроса

   [id] => SBP                        // Тип результирующей структуры
   [api_ver] => 2.0                   // Входит в семейство методов версии 2.0
   [status] => ok                     // Результат вызова метода. Может быть error и ok
   [access] => active                 // Статус ключа доступа к post-API.ru
   [access_status] => ok              // Статус доступа с использованием ключа
   [executed_time] => 0.06            // Время исполнения скрипта (без учета сетевых задержек)
   [source] => Array                  // Исходные данные, передаваемый в базу данных (контроль)
       (
           [cityid] => cda74a83-ae08-4ba2-b01c-c6fc373222cb
           [street] => сан
           [limit] => 10
           [highlight] => 1
           [full_search] => 1
       )
   [content] =>                       // структура SBPv2_content

Ошибка

   [id] => SBP
   [api_ver] => 2.0
   [access] => active
   [access_status] => ok
   [executed_time] => 0
   [status] => error
   [content] => Array
       (
           [msg] => Фрагмент имени улицы должен содержать не менее 2 символов
           [err] => sbp_fewchars
       )


Особенности

  • Фрагмент имени города/улицы может передаваться как текстом, так и в виде строки, закодированной urlencode (Например, "сан" - %D1%81%D0%B0%D0%BD). Настоятельно рекомендуется отправлять в API запрос именно в кодированном формате для гарантии корректной обработки символов "пробел", "кавычки" и прочие.
  • Фрагмент имени улицы должен содержать минимум один символ. В противном случае будет возвращена ошибка.
  • Если требуется иное оформление "подсветки" найденной улицы, отличающееся просто от жирного начертания, то необходимо после получения результата заменить теги "" и "" на необходимые.

Обсуждение

 Форум для обсуждения метода SBP

Примеры использования

нет

Фрагменты кода

нет

История

  • 09.08.2013 - Снижена зависимость от параметра limit. Теперь этот параметр не регулирует производительность и скорость ответа, а позволяет ограничить число строк, которые вернутся в клиентское приложение для показа пользователям. Кроме того, теперь скорость работы метода не зависит от использования параметра full.
  • 01.06.2013 - Добавлен порядок вывода городов и улиц
  • 09.05.2013 - Метод создан