Ho visto molta confusione da parte delle persone su cosa POST significhi realmente. Fa non significa creare, e fa non significa aggiornamento. POST significa "inviare un messaggio a una risorsa senza l'aspettativa di idempotenza". Gli altri metodi HTTP di base sono tutti idempotenti: se si fa la stessa cosa due volte, si ottiene (moralmente) lo stesso risultato.
Facciamo chiarezza. Quando usi POST due volte di seguito, inviando il messaggio stesso alla risorsa stessa , stai comunque anticipando diversi risultati dalle due operazioni. Questo può mappare abbastanza bene alla creazione in cui il server sta creando nuovi URI di risorse in risposta ai messaggi: diversi URI, non idempotenti. D'altra parte, se il client sta creando l'URI (un caso comune in cui si sta modellando un filesystem), il POST è la cosa sbagliata per la creazione: PUT alla risorsa che si desidera creare è più tipicamente corretto lì (e PUTting the lo stesso contenuto dello stesso URI genera due volte la stessa cosa: il contenuto esiste in seguito a quell'URI anche se non esisteva prima).
È importante rendersi conto che REST non consiste semplicemente nel disporre di collezioni e valori in queste raccolte. Può fare molto di più (anche se in questo caso devi fare più lavoro per renderlo tutto rintracciabile).