• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

929
Views
Cómo pasar el encabezado de autorización de Swagger Doc en Python Fast API

Estoy tratando de pasar el encabezado de autorización usando la página de Documentación, similar a esta página:

ingrese la descripción de la imagen aquí

Dado que las documentaciones se generan automáticamente en Fast API, tengo dificultades para tratar de resolver esto. Seguí esta página https://fastapi.tiangolo.com/tutorial/security/ pero no pude encontrar ninguna información sobre cómo pasar el token del portador. Tenga en cuenta que no estoy buscando validar el token, solo estoy buscando una forma de pasar el token del portador a través de la página de documentación.

¿Alguien puede consultar alguna documentación relevante o con ayuda?

about 3 years ago · Santiago Trujillo
1 answers
Answer question

0

El encabezado de autorización no se puede solicitar mediante Header().

Necesita un Dependiente basado en SecurityBase como HTTPBearer para decirle a Swagger que su punto final API necesita un encabezado de Autorización.

 from fastapi.security import HTTPBearer auth_scheme = HTTPBearer() @app.get("/me") async def echo_me(token: HTTPAuthorizationCredentials = Depends(auth_scheme)) ...

Puede escribir una clase hereda HTTPBearer u otra clase de seguridad si desea que la credencial sea opcional.

 from fastapi import Depends, HTTPException, Request class OptionalHTTPBearer(HTTPBearer): async def __call__(self, request: Request) -> Optional[str]: from fastapi import status try: r = await super().__call__(request) token = r.credentials except HTTPException as ex: assert ex.status_code == status.HTTP_403_FORBIDDEN, ex token = None return token auth_scheme = OptionalHTTPBearer() @app.get("/test") async def test(token = Depends(auth_scheme)): return dict(token=token)
about 3 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error