Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

1.7K
Visualizações
¿Cómo llamar a una api desde otra api en fastapi?

Pude obtener la respuesta de una API de otra pero no pude almacenarla en algún lugar (en un archivo o algo antes de devolver la respuesta) response=RedirectResponse(url="/apiname/") (Quiero acceder a una solicitud de publicación con encabezado y cuerpo)

Quiero almacenar este contenido de respuesta sin devolverlo.

Sí, si devuelvo la función obtendré los resultados pero cuando la imprimo no encuentro resultados. Además, si doy una solicitud de publicación, aparece el error Entidad no encontrada.

Leí los documentos de starlette y fastapi pero no pude obtener la solución. Las devoluciones de llamadas tampoco ayudaron.

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

No obtuve exactamente la forma de almacenar la respuesta sin regresar usando fastapi/starlette directamente. Pero encontré una solución para completar esta tarea.

  • Para las personas que intentan implementar lo mismo, consideren de esta manera.
 import requests def test_function(request: Request, path_parameter: path_param): request_example = {"test" : "in"} host = request.client.host data_source_id = path_parameter.id get_test_url= f"http://{host}/test/{id}/" get_inp_url = f"http://{host}/test/{id}/inp" test_get_response = requests.get(get_test_url) inp_post_response = requests.post(get_inp_url , json=request_example) if inp_post_response .status_code == 200: print(json.loads(test_get_response.content.decode('utf-8')))

Por favor, hágamelo saber si hay mejores enfoques.

over 4 years ago · Santiago Trujillo Relatório

0

Tengo el mismo problema y necesitaba llamar a la API de terceros de forma asíncrona . Así que probé de muchas maneras y encontré una solución con la biblioteca de solicitudes asíncronas y funciona para mí.

 import http3 client = http3.AsyncClient() async def call_api(url: str): r = await client.get(url) return r.text @app.get("/") async def root(): ... result_1 = await call_api('url_1') result_2 = await call_api('url_2') ...

httpx también puedes usar este video que está usando httpx

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda