Devo creare un webservice per le informazioni sui dipendenti e sto cercando di organizzarlo.
Per chiarire, abbiamo già un servizio REST-ish per le persone e un servizio REST-ish separato per le aziende.
Questo servizio sarà specifico per la relazione tra questi due (tutti i dati saranno consegnati dai servizi ai dati-consumatori attraverso un client (o client)).
Tra le altre attività, questo servizio dovrà:
- recupera tutti i datori di lavoro (ID della società) per un dato ID di persona
- recupera tutti i dipendenti (id di una persona) per un determinato ID di azienda
Potrei vedere fare questo un paio di modi diversi.
- L'utilizzo dei parametri di ricerca potrebbe sembrare qualcosa come:
-
http://blah/employee/find?person_id=12345
-
http://blah/employee/find?company_id=9876
-
- L'uso dell'URL potrebbe sembrare qualcosa come:
-
http://blah/employee/find/employers?id=12345
-
http://blah/employee/find/employees?id=9876
-
Prendendo l'approccio dell'URL, sarei in grado di validare in modo specifico un singolo parametro per ciascun caso employer e employee .. sembra bello e pulito, ma abbastanza fisso. < br>
L'approccio ai parametri sembra essere meno rigido / più flessibile, ma richiede più percorsi di dati (se / altro), e quindi il codice può richiedere più tempo per capire quando il futuro-me (o chiunque altro) ritorna dopo è stato a lungo dimenticato.
Quali benefici potrebbero esserci per andare una volta contro l'altra?
Per me, la differenza sembra un po 'arbitraria, ma questa è la prima volta che devo prendere questa decisione.