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

98
Visualizações
Cuerpo de solicitud JS que no aparece en Flask

Estoy intentando hacer una solicitud POST desde un script JS a un servidor Flask en pythonanywhere así:

 const response = await fetch('http://myusername.pythonanywhere.com/', { method: 'POST', mode: 'no-cors', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ track: track }) });

Donde pista es una matriz de números nx10. He realizado con éxito solicitudes al servidor a través de Insomnia con un cuerpo como este:

 { "track": [[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10.234], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]] }

e imprimí el contenido del cuerpo de la solicitud en los registros donde se ve así:

 2021-11-16 15:57:14 Test message! 2021-11-16 15:57:14 <Request 'http://myusername.pythonanywhere.com/' [POST]> 2021-11-16 15:57:14 {'track': [[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10.234], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]]}

Sin embargo, cuando intento realizar una solicitud desde mi aplicación web con el primer fragmento de código, obtengo esto en los registros:

 2021-11-16 15:54:21 Test message! 2021-11-16 15:54:21 <Request 'http://myusername.pythonanywhere.com/' [POST]> 2021-11-16 15:54:21 None

Código del servidor:

 @app.route('/', methods=['POST']) def handle_post(): req_data = request.get_json() print("Test message!") print(request) print(req_data) data = req_data['track'] trackData = np.array(data) grade = analysisV2(trackData) return jsonify({"grade": grade})

No tengo idea de por qué una solicitud funciona pero la otra no. También intenté codificar los mismos datos que estoy usando en Insomnia en el cuerpo de solicitud de JS sin ninguna diferencia. ¿Alguien ve algo que me pueda estar perdiendo?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Me las arreglé para averiguar qué estaba pasando en caso de que alguien se lo pregunte y esté haciendo algo similar.

Hubo un par de problemas aquí:

  1. Agregar mode: 'no-cors' a la solicitud evita que el servidor responda con datos reales, por lo que debe eliminarse.
  2. El método get_json() de Flask no funcionaba por alguna razón en este caso, así que en su lugar usé el método json.loads(request.get_data()). En la respuesta, también se usó el método json.dumps() en lugar de .jsonify().
  3. El cliente debe enviar una solicitud con el encabezado 'Access-Control-Allow-Origin': '*' .
  4. El servidor también necesita tener habilitado CORS con from flask_cors import CORS y CORS(app)
about 4 years ago · Juan Pablo Isaza 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