Valori predefiniti nelle risorse di riposo invece di POST / PUT null

0

Per alcune risorse di riposo, ci sono due campi collegati. C'è, se un campo è POST / PUT ottiene il valore dell'altro campo.

In questo esempio abbiamo un importo e amountWithVat (con tasse o imposta sul valore aggiunto). Se esegui il POST o PUT un valore null per amountWithVat, il valore predefinito sarà dall'importo.

Example 1
POST
amount=150
amountWithVAT=null
GET
amount=150
amountWithVAT=150

Example 2
POST
amount=150
amountWithVAT=170
GET
amount=150
amountWithVAT=170
PUT
amount=200
amountWithVAT=null
GET
amount=200
amountWithVAT=200

Per me questo non è intuitivo, ma dal punto di vista di uno sviluppatore front-end questo potrebbe avere senso. Personalmente preferirei far rispettare questo vietando i null POST / PUT.

Esistono linee guida o best practice contro questo?

    
posta Jakob 04.05.2017 - 21:39
fonte

1 risposta

1

A seconda di chi prevede di utilizzare il servizio, direi che la linea guida che va contro è che non è auto-documentante. Se dovessi

POST
amount=150

per la prima volta mi aspetterei

GET
amount=150
amountVAT=null

Ora se c'è un requisito che dice amountVAT non può essere nullo, penso che la soluzione migliore sarebbe quella di notificare il consumatore

POST
amount=150
Response:
400: Bad Request
message: amountVAT can not be null / blank

In questo modo il consumatore viene informato che la quantità VAT è richiesta e può decidere autonomamente se desidera impostarla come importo o un valore diverso.

    
risposta data 04.05.2017 - 23:58
fonte

Leggi altre domande sui tag