我正嘗試生成客戶端可用於將圖像上傳到特定S3存儲桶的預簽名URL。我已經成功地生成的請求,以獲取文件,就像這樣:爲Amazon S3生成最大內容長度的預簽名PUT url
GeneratePresignedUrlRequest urlRequest = new GeneratePresignedUrlRequest(bucket, filename);
urlRequest.setMethod(method);
urlRequest.setExpiration(expiration);
其中到期和方法日期和列舉HTTPMethod分別對象。
現在我試圖創建一個URL來允許用戶PUT文件,但我無法弄清楚如何設置最大內容長度。我找到了有關POST policies的信息,但我更願意在這裏使用PUT - 我也想避免構建JSON,儘管這看起來不可能。
最後,替代答案可能是某種方式將圖片上傳從API網關傳遞到Lambda,以便在驗證文件類型和大小(這不是理想的)後,我可以將它從Lambda上傳到S3。