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

124
Visualizações
FastAPI Valor faltante

Recibo el siguiente error cuando implemento mi aplicación en Heroku:

 { "detail": [ { "loc": [ "body", "id" ], "msg": "field required", "type": "value_error.missing" } ] }

y registro desde la consola

22-03-05T19:45:12.863425+00:00 heroku[router]: at=info method=GET path="/" host=wallet-reputation.herokuapp.com request_id=51780a1f-491a-4dd6-a8c0-164b41745405 fwd="95.175.20.47" dyno=web.1 connect=0ms service=4ms status=422 bytes=248 protocol=http

Esta es mi aplicación Fastapi

 @app.get("/") def index(request: Request, id: str = Form(...)): return templates.TemplateResponse("main_page.html", context={"request": request})

Así es como se ve mi archivo html:

 <!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.1.3/dist/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous"> <title>Main Page</title> </head> <body> <form method="get"> <center> <div class="form-group col-lg-4"> <label for="walletAdress">Natluk Coin Reputation Wallet</label> <input type="text" class="form-control" id="walletAdress" aria-describedby="walletlHelp" placeholder="Wallet address" style="text-align: center" name="id"> </div> </center> <center> <a class="btn btn-primary" type="submit" role="button" href="https://wallet-reputation.herokuapp.com/wallet/{{ id }}">Check Wallet</a> <a class="btn btn-primary" type="submit" role="button" href="https://wallet-reputation.herokuapp.com/wallet/run/{{ id }}">Create Wallet</a> </center> </html>

Entonces, la lógica es que, cuando protagonizo mi punto final "/", publico la cadena en el formulario, y luego puedo hacer clic en uno de los botones que comienzan a ejecutar el punto final con la variable del formulario.

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

0

Actualizar

A continuación se muestra un ejemplo de cómo enviar un valor a través del formulario y cómo debería verse su punto final:

 from fastapi import FastAPI, Request, status, Form from fastapi.responses import HTMLResponse app = FastAPI() @app.get('/', response_class=HTMLResponse) async def event_create_form(request: Request): html_content = """ <html> <body> <form method="POST" action="/submit"> <input type="text" name="id"> <input type="submit" value="Create Event"> </form> </body> </html> """ return HTMLResponse(content=html_content, status_code=200) @app.post('/submit') async def event_create(id: int = Form(...)): return {"id": id}

Está enviando id como parámetro de path , pero su punto final espera que sea un parámetro de cuerpo ( Form ). Por lo tanto, debe cambiar su punto final a:

 @app.get("/{id}") def index(request: Request, id: str): ...
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