Documentazione API

Specifiche aggiornate degli endpoint REST di SimpleREST, con esempi in JSON e dettagli sui parametri supportati.

Torna alla pagina principale

Panoramica

Base URL: https://rest.delugan.net. Tutte le risposte sono in formato JSON e riflettono lo stato corrente delle risorse didattiche.

  1. Configura una collezione di richieste su Requestly oppure Postman coprendo tutti gli endpoint elencati.
  2. Esporta la collezione in formato JSON e inviala al professore insieme agli eventuali dati di supporto.
  3. Stendi una breve relazione sull'attività svolta, indicando problemi incontrati, soluzioni adottate e strumenti utilizzati.
L'ambiente didattico viene ripristinato periodicamente: considera i dati come temporanei e mantieni copie locali di quanto ti serve consegnare.

Risorse Articoli

Metodo Endpoint Descrizione
GET /articoli Restituisce l'intero elenco di articoli e commenti annidati.
GET /articoli/{id} Restituisce il singolo articolo identificato da id.
POST /articoli Crea un nuovo articolo. Richiede titolo, testo, autore.
PUT /articoli/{id} Aggiorna i campi testuali di un articolo esistente.
DELETE /articoli/{id} Elimina definitivamente un articolo e i relativi commenti.

Payload esempio – creazione articolo

POST /articoli HTTP/1.1
Host: rest.delugan.net
Content-Type: application/json

{
  "titolo": "Titolo dell'articolo",
  "testo": "Contenuto di esempio",
  "autore": "Nome Cognome"
}

Risposta di successo

{
  "id": 2,
  "titolo": "Titolo dell'articolo",
  "testo": "Contenuto di esempio",
  "autore": "Nome Cognome",
  "data_creazione": "2024-05-01T09:30:00.000Z",
  "aggiornato_il": "2024-05-01T09:30:00.000Z",
  "ip": "127.0.0.1",
  "commenti": []
}

Risorse Commenti

Metodo Endpoint Descrizione
GET /articoli/{id}/commenti Recupera i commenti associati all'articolo.
POST /articoli/{id}/commenti Crea un nuovo commento. Richiede testo, autore.
DELETE /articoli/{articolo_id}/commenti/{id_commento} Cancella un commento specifico dell'articolo.

Payload esempio – creazione commento

POST /articoli/1/commenti HTTP/1.1
Host: rest.delugan.net
Content-Type: application/json

{
  "testo": "Questo è un commento",
  "autore": "Commentatore"
}

Risposta di successo

{
  "id": 2,
  "testo": "Questo è un commento",
  "autore": "Commentatore",
  "data_creazione": "2024-05-01T09:40:00.000Z",
  "ip": "127.0.0.1"
}

Aggiornamenti in tempo reale

SimpleREST invia un evento ogni volta che articoli o commenti vengono creati, modificati o eliminati. Il frontend utilizza EventSource per ricevere il flusso.

Metodo Endpoint Descrizione
SSE /eventi Flusso Server-Sent Events con eventi aggiornamento.

Esempio evento

event: aggiornamento
data: [{
  "id": 1,
  "titolo": "Benvenuto su SimpleREST",
  "testo": "...",
  "autore": "Team SimpleREST",
  "data_creazione": "2024-05-01T09:00:00.000Z",
  "aggiornato_il": "2024-05-01T09:00:00.000Z",
  "ip": "seed",
  "commenti": [ ... ]
}]
Per compatibilità con proxy e bilanciatori, il server invia heartbeat periodici. I client dovrebbero ignorare linee che iniziano con `:`.