# Operaciones con URL prefirmadas en S3 (PUT y GET) ## 🟢 PUT (subida de archivo) - Objetivo: subir o sobrescribir un objeto en **:contentReference[oaicite:0]{index=0}** - Método HTTP: `PUT` - Uso: cliente (Java, Angular, Postman) envía el fichero a la URL prefirmada ### Flujo 1. Backend genera URL prefirmada (PUT) 2. Cliente realiza `PUT` a esa URL 3. S3 almacena el objeto en la `key` indicada ### Requisitos clave - Método debe ser `PUT` - Mismo `Content-Type` si fue firmado - URL válida y no expirada --- ## 🔵 GET (descarga de archivo) - Objetivo: descargar o leer un objeto desde **:contentReference[oaicite:1]{index=1}** - Método HTTP: `GET` - Uso: cliente accede directamente al recurso mediante URL firmada ### Flujo 1. Backend genera URL prefirmada (GET) 2. Cliente realiza `GET` a esa URL 3. S3 devuelve el archivo ### Requisitos clave - Método debe ser `GET` - URL válida y no expirada - No se envía body --- ## ⚖️ Diferencia esencial | Operación | Método | Acción | Body | |----------|--------|--------|------| | PUT | PUT | Subir / sobrescribir | Sí (archivo) | | GET | GET | Descargar | No | --- ## 🧠 Idea clave - PUT = escribir en S3 - GET = leer desde S3 - La URL prefirmada **no ejecuta nada por sí sola**, solo autoriza la operación HTTP