REST consiglia di eseguire le query (non creazione di risorse) tramite il metodo GET. In alcuni casi, i dati della query sono troppo grandi o strutturati in modo da rendere difficile l'inserimento di un URL e, per risolvere il problema, un'API RESTful viene modificata per supportare le query con i corpi.Perché non utilizzare PUT per le query REST che richiedono un payload?
Sembra che la convenzione per le query RESTful che richiedono corpi sia quella di utilizzare POST. Ecco alcuni esempi:
query di O'Reilley non modificano lo stato interno del sistema, ma il POST non supporta le operazioni idempotenti . Tuttavia, PUT è idempotente. Perché le API RESTful non usano PUT con un corpo invece di POST per le query che richiedono un corpo?
NOTA:A popular question chiede quale (PUT vs POST) è preferito per la creazione di una risorsa. Questa domanda chiede perché PUT non viene utilizzato per le query che richiedono corpi.
Sono confuso riguardo alla domanda. Stai chiedendo GET vs PUT o PUT vs POST? La prima frase dice la prima, ma l'ultimo paragrafo suggerisce quest'ultima. – Phlucious
La domanda richiede PUT vs POST per ** query ** con il corpo. Non puoi fare un GET con il corpo (o almeno non è ampiamente supportato), così lascia le scelte come PUT o POST tra i verbi HTTP principali/comuni, ignorando REPORT e altri verbi. – lreeder