Endpoint di sviluppo dell'API che si associano agli script del server

0

Sono nuovo nello sviluppo dell'API e ho una domanda che potrebbe sembrare stupida, ma non ho alcuna esperienza con il design dell'API, quindi abbi pazienza con me.

Detto questo, la mia domanda è: le risorse differenti dovrebbero puntare a diversi script sul server? O tutte le risorse dovrebbero puntare allo stesso script, con argomenti diversi?

per esempio:.

/countries/{country_id}/ dovrebbe puntare a /path_to_api/countries?country_id={country_id}

e

/cities/{city_id}/ dovrebbe puntare a /path_to_api/cities?city_id={city_id}

o

/path_to_api/api?resource=countries&country_id={country_id}

e

/path_to_api/api?resource=cities&city_id={city_id}

    
posta Alex 24.12.2017 - 12:34
fonte

1 risposta

2

Il modo in cui strutturi i tuoi file non dovrebbe incidere sul design della tua API REST. Uno degli errori più comuni durante la progettazione di un'API REST è la presenza di artefatti negli URL dovuti a dettagli di implementazione come la tecnologia utilizzata (ad es. Php) piuttosto che a considerazioni puramente progettuali. Supponiamo che immaginiate di riscrivere questa applicazione in futuro con diversi stack tecnologici, non dovreste modificare il design delle API a causa di una decisione iniziale sul design di includere informazioni irrilevanti (.php) nell'URL. Ancora peggio è se hai un URL che termina con .php ma in realtà è stato implementato in Java, o qualcosa del genere.

Che tu realizzi

/countries/{country_id} che punta a /path_to_api/countries?id={country_id}

o

/countries/{country_id} che punta a /path_to_api/api?resource=country&id={country_id}

entrambi sono ok.

    
risposta data 24.12.2017 - 13:43
fonte

Leggi altre domande sui tag