52 lines
1.3 KiB
Markdown
52 lines
1.3 KiB
Markdown
# 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 |