From 1d8e5e022726bd9d98a804357453b8980d1cfe50 Mon Sep 17 00:00:00 2001 From: Gero Zayas Date: Thu, 9 Oct 2025 13:50:34 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=9D=20Add=20Spanish=20translation=20fo?= =?UTF-8?q?r=20HTTP=20QUERY=20method=20section?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Translate experimental HTTP QUERY method documentation - Add warning about non-standard HTTP method - Include code example and limitations section - Add tip about preferring POST for interoperability Brings Spanish docs up to date with English version in docs/en/docs/how-to/custom-request-and-route.md --- .../docs/how-to/custom-request-and-route.md | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/docs/es/docs/how-to/custom-request-and-route.md b/docs/es/docs/how-to/custom-request-and-route.md index 0b479bf00..bbf8b46c9 100644 --- a/docs/es/docs/how-to/custom-request-and-route.md +++ b/docs/es/docs/how-to/custom-request-and-route.md @@ -107,3 +107,41 @@ También puedes establecer el parámetro `route_class` de un `APIRouter`: En este ejemplo, las *path operations* bajo el `router` usarán la clase personalizada `TimedRoute`, y tendrán un header `X-Response-Time` extra en el response con el tiempo que tomó generar el response: {* ../../docs_src/custom_request_and_route/tutorial003.py hl[13:20] *} + +## Experimental: Método HTTP QUERY { #experimental-http-query-method } + +/// warning | Advertencia + +Esta es una funcionalidad experimental para el método HTTP QUERY no estándar. Úsalo con precaución. + +/// + +FastAPI y `APIRouter` exponen un decorador `.query()` para el método HTTP QUERY experimental, tal como se define en el borrador del IETF para "método seguro con cuerpo". + +El método QUERY funciona en tiempo de ejecución y puede usarse como cualquier otro decorador de método HTTP: + +```python +from fastapi import FastAPI +from pydantic import BaseModel + +app = FastAPI() + +class SearchQuery(BaseModel): + text: str + limit: int = 10 + +@app.query("/search") +def search_items(query: SearchQuery): + return {"results": f"Searching for: {query.text}"} +``` + +### Limitaciones { #query-method-limitations } + +* **No se muestra en la documentación interactiva**: El método QUERY no aparecerá en el esquema OpenAPI ni en la documentación interactiva (Swagger UI, ReDoc) porque la especificación OpenAPI no define operaciones "query". +* **Soporte limitado de clientes**: No todos los clientes HTTP y proxies soportan el método QUERY. + +/// tip | Consejo + +Para máxima interoperabilidad, prefiere usar **POST** para operaciones que requieren un cuerpo de request. El método QUERY solo es útil en escenarios especializados donde necesitas seguir la especificación del borrador del IETF. + +///