pre-signed-url · L2

PUT 直傳(免憑證上傳)

PUT 直傳:讓對方免憑證上傳

一句話:presigned PUT 讓前端 / App / 第三方,不用拿到你任何 AWS 憑證,就能把檔案直接傳進你的 bucket——檔案大流量完全不經過你的後端。

它解決什麼痛點

傳統上傳:使用者 → 傳給你的後端 → 後端再轉存 S3。檔案一大、人一多,你的後端就成瓶頸(頻寬、記憶體、暫存全吃緊)。你其實只是個「中轉站」,白白扛了所有流量。

presigned PUT 的三步流程

flowchart 概念:
前端 --①要上傳--> 後端
後端 --②回一條 presigned PUT URL--> 前端
前端 --③直接 PUT 檔案--> S3   (後端不碰檔案)

兩個關鍵好處

一個要記住的特性

單純的 presigned PUT 簽章不綁 body 內容(Level 3 會講:payload 填的是 UNSIGNED-PAYLOAD)——所以對方在期限內可以傳「任何內容」上去。想限制檔案大小 / 型別,presigned PUT 本身做不到,要改用 POST policy(Level 6 主題)。

參考來源