4.2. Specificare il comportamento del server
4.2. Specificare il comportamento del server
I requisiti del server definiscono cosa le implementazioni devono fare per essere conformi. Quando si specifica il comportamento del server, è essenziale definire chiaramente:
-
quali richieste il server dovrebbe accettare e quali risposte dovrebbe inviare;
-
quale stato il server è autorizzato a mantenere, se presente, tra le richieste (vedere Sezione 4.10);
-
quali risorse il server dovrebbe rendere disponibili e quali sono le loro semantiche; e
-
quali elementi di protocollo (metodi, codici di stato, campi di intestazione e contenuto) il server dovrebbe utilizzare e come.
Per consentire all'applicazione di evolversi, le specifiche DOVREBBERO consentire ai server di accettare nuove forme di richieste non esplicitamente specificate. Questo potrebbe manifestarsi come contenuto di richiesta aggiuntivo, nuovi campi di intestazione o nuovi URI.
Allo stesso modo, le specifiche NON DOVREBBERO proibire ai server di inviare codici di stato inaspettati o campi di intestazione aggiuntivi nelle risposte, ma DOVREBBERO fornire indicazioni su come i client dovrebbero gestirli (spesso, "ignorare ciò che non si comprende").