I verbi HTTP dovrebbero essere usati semanticamente?

1

Se sto realizzando un'applicazione web che si integra con un back-end lato server, sarebbe meglio utilizzare i metodi HTTP semanticamente? Ad esempio, se sto recuperando dati (ad es. Per popolare un menu, ecc.), Utilizzerei GET, ma per aggiornare i dati (ad es., Salvare un record), userei il POST. (Capisco che ci sono altri metodi che potrebbero essere ancora più appropriati, ma dobbiamo considerare il supporto del browser.)

Riesco a vedere i vantaggi di ciò nel senso che è effettivamente un'API RESTful, ma con un costo di sviluppo leggermente maggiore. Nei miei progetti precedenti, ho POST'd tutto: vale la pena passare a una mentalità RESTful semplicemente per il bene delle migliori pratiche?

    
posta Xophmeister 19.10.2012 - 16:00
fonte

2 risposte

7

La mia risposta è semplicemente: sì.

Ci sono anche molti vantaggi, come puoi ottenere direttamente accedendo agli URL da diverse parti della tua applicazione. Di quando tu post cose sei coperto e non esponi roba.

Se rispetti i verbi nelle tue classi in qualunque linguaggio di programmazione tu usi, aiuterà anche a strutturare meglio il tuo codice. Le classi che inviano i dati saranno più naturalmente separate da quelle che stanno ricevendo o cercando informazioni.

    
risposta data 19.10.2012 - 16:09
fonte
4

Un altro vantaggio: l'utilizzo di GET (anziché il POST per le richieste di stile di recupero) significa che è possibile eseguire il caching.

Inoltre, un lato negativo che potrebbe causare problemi: alcuni proxy hanno il supporto per il metodo DELETE e PUT patchy.

    
risposta data 25.10.2012 - 17:04
fonte

Leggi altre domande sui tag