Я пытаюсь создать предварительно подписанный URL-адрес, который клиент может использовать для загрузки изображения в конкретный ведро S3. Я успешно генерироваться запросы GET-файлы, например, так:Создание предварительно подписанного PUT-url для Amazon S3 с максимальной длиной содержимого
GeneratePresignedUrlRequest urlRequest = new GeneratePresignedUrlRequest(bucket, filename);
urlRequest.setMethod(method);
urlRequest.setExpiration(expiration);
где действия и способ Дата и HTTPMethod объектов соответственно.
Теперь я пытаюсь создать URL-адрес, позволяющий пользователям ОТКЛЮЧИТЬ файл, но я не могу понять, как установить максимальную длину содержимого. Я нашел информацию о POST policies, но я бы предпочел использовать PUT здесь - я также хотел бы избежать создания JSON, хотя это не представляется возможным.
Наконец, альтернативный ответ может быть каким-то способом передать загрузку изображения из шлюза API в Lambda, чтобы я мог загрузить его с Lambda на S3 после проверки типа и размера файла (что не идеально).