Salta al contenuto principale

Route definite3

GET/api/users200
Usa :id per parametri dinamici
POST/api/users201
Usa :id per parametri dinamici
GET/api/users/:id200
Usa :id per parametri dinamici

Come utilizzare Generatore Mock Server

Definisci le route mock

Aggiungi una o più route specificando metodo HTTP (GET, POST, PUT, DELETE, PATCH), path (usa :id per parametri dinamici), status code di risposta e delay opzionale in millisecondi.

Personalizza il body di risposta JSON

Modifica il response body di ogni route nell'editor JSON integrato. Il tool valida la sintassi in tempo reale e segnala eventuali errori prima di generare l'output.

Scegli il formato di output

Passa tra le schede "db.json (json-server)" ed "Express.js Router" per generare rispettivamente un database json-server o un router Express.js pronti da usare, poi copia o scarica il file.

Oppure importa un db.json esistente

Usa il pulsante "Importa" per incollare un db.json già esistente: il tool genera automaticamente le 5 route CRUD (GET lista, POST, GET singolo, PUT, DELETE) per ogni collezione trovata.

Suggerimenti

  • Usa :id nel path (es. /api/users/:id) per generare parametri dinamici compatibili sia con json-server che con Express.js.
  • Imposta status code diversi da 200 (es. 401, 404, 500) su route dedicate per testare la gestione degli errori nel tuo frontend senza modificare il backend reale.

Domande frequenti

Qual è la differenza tra l'output json-server ed Express.js?

Il formato json-server genera un file db.json che alimenta il pacchetto npm json-server: solo le route GET vengono trasformate in collezioni. Il formato Express.js genera un router.js completo con tutte le route (GET, POST, PUT, DELETE, PATCH) e i relativi status code, delay e response body, da montare in un'app Express esistente con app.use().

Come funziona l'importazione da un db.json esistente?

Incollando un oggetto JSON con chiave = nome collezione e valore = array di elementi, il tool crea automaticamente 5 route per ogni collezione: GET /api/{collezione}, POST /api/{collezione}, GET /api/{collezione}/:id, PUT /api/{collezione}/:id e DELETE /api/{collezione}/:id.

A cosa serve il campo delay (ms)?

Il delay simula la latenza di rete di un'API reale. Nell'output Express.js viene tradotto in un setTimeout prima di inviare la risposta, utile per testare stati di loading e race condition nel frontend.

Cosa succede se il response body JSON non è valido?

Il tool segnala l'errore di sintassi sotto il campo interessato e non blocca la generazione dell'output: nel formato Express.js una route con JSON non valido produce comunque un body { error: 'invalid response body' } per evitare che l'intero output si rompa.

Le route e i dati che inserisco vengono salvati da qualche parte?

No, tutta la generazione avviene client-side nel browser. Nessuna route, path o response body viene inviata a un server: puoi copiare o scaricare l'output direttamente dalla pagina.