С Webhooks для S3, используя API, можно настраивать отправку таких HTTP и HTTPS запросов по событиям для бакета, как:
События (Event), для которых можно настроить конфигурацию Webhooks:
Для работы с Webhooks доступно два метода:
Используя метод PUT можно настроить уведомления о некоторых событиях (PutObject, DeleteObject и т.д) в бакете.
Сейчас поддерживается один тип событий — SimpleTopicConfiguration — запрос на url, предоставленный пользователем.
Например, необходимо выполнить запрос на url https://test.com при PutObject в бакет bucketA объектов, имена которых подходят под маску image/*.png.
Запрос:
Ответ:
Метод GET возвращает текущую конфигурацию правил (SimpleNotificationConfiguration) бакета. Если же правила для данного бакета не были установлены, то будет возращен пустой элемент NotificationConfiguration.
Запрос:
Ответ:
Для примера установленных правил, при загрузкие объектов в бакет bucketA с именами image/*.png, будет приходить следующий запрос:
В процессе выполнения запроса сервис LinxCloud S3 валидирует url, выполняя на него запрос(2):
Чтобы подтвердить url нужно в ответ отправить подпись:
Формула для вычисления сигнатуры:
signature = hmacsha256(_url, hmacsha256(_TopicArn, hmacsha256(_Timestamp, Token)))
Для приведенного примера:
Ответ на запрос(1), при успешном подтверждении url, будет отправлен response:
Опишите вашу задачу, и мы поможем вам ее решить