Sto sviluppando un'API RESTful nel mio progetto, ma non ho esperienza in merito. Per colmare queste lacune ho guardato alcuni video, principalmente da Apigee, che sono fantastici. Una situazione porta molte discussioni sul mio progetto e spero che tu possa aiutarmi a chiarirlo. Il client che utilizza l'API è in grado di creare un utente inviando l'url del mio / degli utenti, ma ha alcuni requisiti come: formato del nome, disponibilità del nome utente, disponibilità della posta elettronica, regione valida e molti altri. Posso facilmente convalidare il formato del nome nella mia app client, sarebbe facile. Il problema è quando si tratta di disponibilità (principalmente se l'e-mail e il nome utente sono disponibili per essere utenti o sono già stati presi). Abbiamo due diverse linee di pensiero sulla mia squadra:
il primo interromperà ogni verifica in un URL diverso, qualcosa del genere / Utenti / EmailAvailable e / Utenti / Nome utenteDisponibile ou / Disponibile / Email e / Disponibile / Nome utente
Affermano che renderebbe l'interfaccia più pulita (più intuitiva) e manterrebbe anche la coesione, poiché un metodo ha una sola responsabilità.
La seconda linea di pensiero è di avere un solo URL / Utente / Verifica e verificherà il nome utente, l'email o entrambi, a seconda del JSON che riceve. Sostengono che richiederebbe solo un viaggio sul server e che la coesione non è un problema perché, dal momento che gli URL non sono necessariamente mappati ai metodi, possono dividere le chiamate in metodi che fanno una cosa ciascuna. Affermano anche che l'interfaccia non dovrebbe preoccuparsi della coesione
Le mie domande: 1- Questi argomenti sulla coesione dalla seconda linea sono validi? 2- Come faresti? (O uno di quelli o qualsiasi altro che tu sappia)
grazie!