Ссылка веб-сервиса сберкнижки
Протокол веб-сервиса стиля REST используется, чтобы связаться с Вашим сервером об изменениях в передачах и выбрать последнюю версию передачи, когда это изменилось. Конечные точки всегда начинаются с веб-сервиса URL, как указано в передаче, сопровождаемой числом версии протокола. Например, запрос на последнюю версию передачи типа com.apple.pass.example
и порядковый номер ABC123
мог бы быть похожим на следующее:
Все конечные точки, включая конечную точку журналирования, требуются.
Для всех конечных точек укажите application/json
MIME вводит для ответов, содержащих данные JSON, и application/vnd.apple.pkpass
для ответов, содержащих передачу Сберкнижки.
Если запрос перестал работать — например, вследствие проблемы сетевого соединения — Сберкнижка попробовала еще раз несколько раз после ожидания промежутка времени. Каждый раз, когда это попробовало еще раз, это ожидает дольше. Если запрос продолжает перестать работать, он в конечном счете сдается.
Регистрация устройства для получения требует у уведомлений передачу
POST запрашивает к webServiceURL/
версия/devices/
deviceLibraryIdentifier/registrations/
passTypeIdentifier/
serialNumber
Параметры
- webServiceURL
URL к Вашему веб-сервису, как указано в передаче.
- версия
Версия протокола. В настоящее время, v1.
- deviceLibraryIdentifier
Уникальный идентификатор, использующийся, чтобы идентифицировать и аутентифицировать это устройство в будущих запросах.
- passTypeIdentifier
Тип передачи, как указано в передаче.
- serialNumber
Порядковый номер передачи, как указано в передаче.
Заголовок
Заголовок Авторизации предоставляется; его значение является словом «ApplePass», сопровождаемым пространством, сопровождаемым маркером авторизации передачи, как указано в передаче.
Полезная нагрузка
Полезная нагрузка POST является словарем JSON, содержа единственный ключ и значение:
- pushToken
Маркер нажатия, который сервер может использовать для отправки уведомлений нажатия этому устройству.
Ответ
Если порядковый номер уже регистрируется для этого устройства, возвратите состояние HTTP 200.
Если регистрация успешно выполняется, возвратите состояние HTTP 201.
Если запрос не авторизовывается, возвратите состояние HTTP 401.
Иначе, возвратите надлежащее стандартное состояние HTTP.
Обсуждение
Любое время передача обновляется, Ваш сервер, отправляет уведомление нажатия с пустым словарем JSON как полезная нагрузка к устройству с помощью данного маркера уведомления нажатия. Это продолжается, пока устройство не явно не зарегистрировано (как описано в Нерегистрации Устройства).
Получение порядковых номеров для передач, связанных с устройством
GET запрашивает к webServiceURL/
версия/devices/
deviceLibraryIdentifier/registrations/
passTypeIdentifier?passesUpdatedSince=
тег
Параметры
- webServiceURL
URL к Вашему веб-сервису, как указано в передаче.
- версия
Версия протокола. В настоящее время, v1.
- deviceLibraryIdentifier
Уникальный идентификатор, использующийся, чтобы идентифицировать и аутентифицировать устройство.
- passTypeIdentifier
Тип передачи, как указано в передаче.
- тег
Тег от предыдущего запроса. (дополнительный)
Если
passesUpdatedSince
параметр присутствует, возвратите только передачи, обновленные со времени, указанногоtag
. Иначе, возвратите все передачи.
Ответ
Если там соответствуют передачи, возвратите состояние HTTP 200 со словарем JSON со следующими ключами и значениями:
- lastUpdated (строка)
Текущий тег модификации.
- serialNumbers (массив строк)
Порядковые номера соответствующих передач.
Если нет никаких передач соответствия, возвратите состояние HTTP 204.
Иначе, возвратите надлежащее стандартное состояние HTTP.
Обсуждение
Тег модификации используется для предоставления имени к моменту времени. Обычно удобно использовать метку времени, но сервер свободен использовать другой подход. Тег обрабатывается как непрозрачное значение системой.
Получение последней версии передачи
GET запрашивает к webServiceURL/
версия/passes/
passTypeIdentifier/
serialNumber
Параметры
- webServiceURL
URL к Вашему веб-сервису, как указано в передаче.
- версия
Версия протокола. В настоящее время, v1.
- passTypeIdentifier
Тип передачи, как указано в передаче.
- serialNumber
Уникальный идентификатор передачи, как указано в передаче.
Заголовок
Заголовок Авторизации предоставляется; его значение является словом «ApplePass», сопровождаемым пространством, сопровождаемым маркером авторизации передачи, как указано в передаче.
Ответ
Если запрос авторизовывается, возвратите состояние HTTP 200 с полезной нагрузкой данных передачи.
Если запрос не авторизовывается, возвратите состояние HTTP 401.
Иначе, возвратите надлежащее стандартное состояние HTTP.
Обсуждение
Поддерживайте стандартный HTTP, кэширующийся на этой конечной точке: проверьте на If-Modified-Since
заголовок и Код состояния HTTP возврата 304, если не изменилась передача.
Нерегистрация устройства
DELETE запрашивает к webServiceURL/
версия/devices/
deviceLibraryIdentifier/registrations/
passTypeIdentifier/serialNumber
Параметры
- webServiceURL
URL к Вашему веб-сервису, как указано в передаче.
- версия
Версия протокола. В настоящее время, v1.
- deviceLibraryIdentifier
Уникальный идентификатор, использующийся, чтобы идентифицировать и аутентифицировать устройство.
- passTypeIdentifier
Тип передачи, как указано в передаче.
- serialNumber
Уникальный идентификатор передачи, как указано в передаче.
Заголовок
Заголовок Авторизации предоставляется; его значение является словом «ApplePass», сопровождаемым пространством, сопровождаемым маркером авторизации передачи, как указано в передаче.
Ответ
Если разъединение успешно выполняется, возвратите состояние HTTP 200.
Если запрос не авторизовывается, возвратите состояние HTTP 401.
Иначе, возвратите надлежащее стандартное состояние HTTP.
Обсуждение
Сервер разъединяет указанное устройство с передачей, и больше не отправляйте уведомления нажатия этому устройству, когда изменяется передача.
Журналирование ошибок
POST запрашивает к webServiceURL/
версия/log
Параметры
- webServiceURL
URL к Вашему веб-сервису, как указано в передаче.
- версия
Версия протокола. В настоящее время, v1.
Полезная нагрузка
Полезная нагрузка POST является словарем JSON, содержа единственный ключ и значение:
- журналы (строка)
Массив журнала обменивается сообщениями как строки.
Ответ
Возвратите состояние HTTP 200.
Обсуждение
Эта конечная точка предназначается, чтобы помочь Вам отладить свою реализацию веб-сервиса. Сообщения журнала содержат описание ошибки в человекочитаемом формате.