Supponiamo che un'app Web sia composta da moduli indipendenti:
example.com/accounting
example.com/employees
example.com/admin
Il passaggio successivo è l'aggiunta di un'API che normalmente potrebbe terminare in questo modo:
example.com/api/v1/accounting
example.com/api/v1/employees
example.com/api/v1/admin
Ho lavorato prima in questo modo ed è stata la cosa più naturale, ma ora che ogni sotto-app è una bestia unica che ha anche operazioni di distribuzione indipendenti, questo modello è nato come idea:
example.com/accounting/api/v1
example.com/employees/api/v1
example.com/admin/api/v1/
Ci sono dei lati negativi tra i due modi di organizzare la mia API tra i moduli di cui dovrei essere a conoscenza?
Sto cercando di pensare ai costi di implementazione, al caching, alla sicurezza ... ma non riesco a trovare alcun chiaro svantaggio. L'unica cosa che mi dà fastidio è la mia abitudine di avere tutte le operazioni API sotto un percorso root comune.