Вебхук

Веб-хук меняет обычное направление работы. Вместо того чтобы клиент многократно спрашивал, изменилось ли что-либо, он регистрирует собственный URL-адрес, и сервер отправляет HTTP-запрос к этому URL-адресу при возникновении события. Для этих запросов клиент становится сервером.

Как это работает

Подписка осуществляется путем предоставления провайдеру URL-адреса и, как правило, получения общего секрета. Когда происходит событие, провайдер отправляет POST-запрос на этот URL-адрес, подписывая его — обычно это HMAC-код поверх необработанного тела запроса в заголовке. Ваша конечная точка проверяет подпись, быстро отвечает кодом 2xx и выполняет дальнейшую работу. Провайдеры повторяют попытки получения ответов с кодом, отличным от 2xx, поэтому запросы могут поступать и будут поступать более одного раза.

Заблуждение

Получение веб-хука означает, что событие истинно. Непроверенная конечная точка веб-хука — это общедоступный URL-адрес, на который любой может отправить любой POST-запрос. Подпись не является необязательной и должна быть вычислена на основе полученных точных байтов — разбор и повторная сериализация JSON перед отправкой являются наиболее распространенной причиной, по которой правильная реализация не проходит проверку.

Попробуйте здесь.

API веб-хуков позволяет подписаться, инициировать доставку, прочитать заголовок `x-funapi-signature` и проверить его, а затем изменить полезную нагрузку и наблюдать за сбоем проверки.

Источники

Другие термины

Читать страницу на английском

Все термины · Приёмы тестирования · Все 39 mock REST API

Последнее обновление