Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

379
Views
Reaccionar nativo con Axios: método de publicación con tiempo de espera de devolución del cuerpo

Estoy intentando crear un servidor miragejs con una solicitud posterior, pero recibo un tiempo de espera cada vez que hago una llamada. Extrañamente, los puntos finales de obtener/eliminar devuelven bien, pero los puntos finales de publicación/colocación se cuelgan indefinidamente, lo que resulta en un error de tiempo de espera de broma:

 Timeout - Async callback was not invoked within the 5000 ms timeout specified by jest.setTimeout.Timeout - Async callback was not invoked within the 5000 ms timeout specified by jest.setTimeout.Error

Mi archivo de servidor miragejs:

 import { createServer } from "miragejs"; export function startTestAPIServer() { return createServer({ namespace: "/testing", routes() { this.get("/test", (schema) => { console.log("recieved request!") return {"foo": "get testing"} }); this.post("/test", (schema, request) => { return {"foo": "post testing"} }) } }); }

Mi archivo de prueba:

 import { startTestAPIServer } from "../../content/mockAPI/testAPI" import axios from "axios" // initiate test server let server; beforeEach(() => { server = startTestAPIServer(); }) afterEach(() => { server.shutdown(); }) describe("testAPI", () => { it("returns get request", async () => { var data; await axios .get("/testing/test") .then((res) => data = res.data) .catch((err) => console.log(err)); expect(data).toEqual({"foo": "get testing"}); }) it("returns post request", async () => { var data; await axios .post("/testing/test", {}) .then((res) => data = res.data) .catch((err) => console.log(err)); expect(data).toEqual({"foo": "post testing"}); }) })

El primer caso pasa mientras que el segundo falla. No estoy seguro de lo que estoy haciendo mal que podría causar algo como esto. Estoy bastante seguro de que no es axios lo que causa el problema, ya que registré su solicitud y devoluciones, y solo se registra la solicitud. También estoy seguro de que, de hecho, se está alcanzando el punto final, ya que los registros de la consola se imprimirán desde el bloque de código del punto final, simplemente no volverá por algún motivo. No estoy seguro de si es relevante, pero también estoy ejecutando React Native.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Este es un problema actual con miragejs, ver aquí . cesar-medina-25 encontró una solución agregando lo siguiente al archivo de instalación de jest.

 function FormDataMock() { this.append = function () {}; } global.FormData = FormDataMock;
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!