Sat Sep 26 2020
...
Webhooks приходят в FastComments
! В этой статье содержится технический жаргон
Что нового
С FastComments теперь возможно вызывать конечную точку API всякий раз, когда комментарий добавляется, обновляется или удаляется из нашей системы.
Мы достигаем этого с помощью асинхронных вебхуков через HTTP/HTTPS.
Как это использовать
Сначала перейдите в админку вебхуков. Это доступно через Управление данными -> Вебхуки.
Оттуда вы можете указать конечные точки для каждого типа события комментария.
Для каждого типа события обязательно нажмите Отправить тестовую нагрузку, чтобы убедиться, что ваша интеграция настроена правильно. Смотрите следующий раздел "Тестирование" для получения подробностей.
Тестирование
В админке вебхуков есть кнопки "Отправить тестовую нагрузку" для каждого типа события (Создание, Обновление, Удаление). События Создания и Обновления отправляют фиктивный объект WebhookComment, а при тестировании Удаления будет отправлено фиктивное тело запроса с только одним ID.
Тест сделает два вызова для проверки кода ответа для сценариев "счастливый" (правильный API ключ) и "грустный" (недействительный API ключ).
Когда тест отправляет недействительный API ключ, вы должны вернуть код состояния 401, чтобы тест прошел полностью. Если вы неправильно проверяете значение токена, вы увидите ошибку, подобную:
Структура объекта комментария
Структура события "Создать"
Тело запроса события "создание" — это объект WebhookComment.
Структура события "Обновить"
Тело запроса события "обновление" — это объект WebhookComment.
Структура события "Удалить"
Тело запроса события "удаление" — это объект WebhookComment, но содержащий только id.
Почему Создание и Обновление используют HTTP PUT, а не POST?
Поскольку все наши запросы содержат ID, повторный один и тот же запрос Создания или Обновления не должен создавать новые объекты с вашей стороны. Это означает, что эти вызовы идемпотентны и должны быть PUT-событиями согласно спецификации HTTP.
Как это работает
Все изменения объекта Комментария в системе вызывают событие, которое попадает в очередь. Вы можете следить за этой очередью в админке вебхуков в случае, если ваше API перестает работать. Если запрос к вашему API не удался, мы повторно добавим его в очередь по расписанию. Это расписание — 1 минута * количество повторных попыток. Если вызов не удался один раз, он попробует снова через минуту. Если он не удался дважды, то подождет две минуты и так далее. Это сделано, чтобы мы не перегружали ваше API в случае его неполадок.
Безопасность & API токен
В заголовке запроса мы передадим ваш API Secret в параметре, называемом "token".
Если вы не проверите этот параметр должным образом, ваша интеграция не будет помечена как Подтвержденная. Это мера предосторожности, чтобы гарантировать безопасность любых интеграций с FastComments.
В заключение
Мы надеемся, что вы найдете интеграцию вебхуков FastComments легкой для понимания и быстрой в настройке.
Если у вас есть дополнительные вопросы, не стесняйтесь обращаться на страницу поддержки клиента.
Удачи!
