Esaminando due delle nostre entità Company
e Address
. Una società ha un billingAddress
e un profileAddress
.
Non sono sicuro di come implementare una funzione per impostare l'indirizzo di fatturazione rispetto al profilo. Ecco le opzioni che posso vedere:
-
Crea un nuovo indirizzo utilizzando
POST
in/address
. Aggiorna l'oggetto azienda su/company
conprofileAddress = {/* the new id of the address */}
-
Esegui
/company/:id?function=updateBillingAddress&{/* rest of parameters go here */}
-
Esegui
/updateBillingAddress?company={companyId}&{/* rest of parameters go here */}
-
Esegui
/company/:id?billingAddress={ /* address data here */ }
Il primo metodo richiede due chiamate e una maggiore responsabilità da parte dello sviluppatore che si collega all'API. Tuttavia, non sono sicuro che i secondi due metodi siano la struttura appropriata.
L'ultimo sembra che potrebbe essere a posto, offre flessibilità per gli aggiornamenti senza la responsabilità di gestire i puntatori o eseguire due chiamate .. ancora incerto.
Qualcuno ha visto l'uso dei metodi 2 o 3 prima. Va bene usare? Perché perché no? Quale suggeriresti di usare e perché?