Suggerirei di restituire solo ciò che è necessario + un piccolo chiarimento.
Ad esempio, a seconda dell'utilizzo dell'API, è possibile includere una copia dell'oggetto, così come esiste dopo il salvataggio.
Quindi un POST di {chiave: 123} potrebbe restituire {chiave: 123, pippo: 'bar'}.
L'idea di base è che è meglio restituire l'oggetto e doverlo interrogare nuovamente.
Detto questo, i tuoi consumatori API non hanno bisogno dell'oggetto non è necessario restituirlo.
Di solito restituisco {success: true} o qualcosa del genere, quando non ci sono oggetti richiesti su POST PUT e PATCH perché facilita la ricezione. Detto questo, è meglio che il 99% delle volte restituisca la rappresentazione salvata dell'oggetto, è raro che non ne abbiano bisogno comunque, ed è "più economico" inviarlo tutto in una richiesta e poi in due.
Per essere precisi, in un laboratorio si trova perfettamente a gestire tutto con solo codici di stato, nel mondo reale, è molto meglio restituire alcuni dati, anche se ridondanti, in modo che i consumatori di API possano facilmente capire cosa stanno cercando di dire.
Restituire 200 {success: true} consente alle persone di scrivere codice in entrambi i modi:
if response.code == 200
do stuff
end
e
if response.body.success
do stuff
end
inoltre non è così difficile da parte tua.
Infine, (scusate per la struttura di risposta di poos), fornendo a un api JSON pubblico il vostro abbandono di un sacco di controllo su come verrà utilizzato. Alcuni client possono reagire in modo diverso a diversi organismi (o mancare di essi) o codici di stato.