API routování – více verzí API
- japanese
- Člen | 2
Dobrý den,
jak by mělo správně vypadat nastavení rout (a případně adresářová
struktura), pokud bych chtěl mít API, např.
/api/1.0/presenter/action
/api/2.3/presenter/action
Jak se taková aplikace navrhuje z hlediska různých verzí API? Používá se jeden presenter, který se chová různě, podle toho na jakou verzi API byl zaslán dotaz?
Děkuji
- Tharos
- Člen | 1030
To záleží na tom, jak hodně se od sebe takové verze 1.0 a 2.3 liší. :) Jinak řečeno záleží na sémantice Tvého verzování.
Pokud například děláš napříč major verzemi větší změny
s BC breaky a napříč minor verzemi zpětnou kompatibilitu
udržuješ, mohlo by pro Tebe být výhodné mít pro každou major verzi
samostatný modul (v duchu Api:V1:<Presenter>
,
Api:V2:<Presenter>
…) a ty minor verze si řešit už jen
nějakým parametrem v presenteru…
Ale vhodných přístupů je více. :)
Editoval Tharos (26. 2. 2015 10:14)
- japanese
- Člen | 2
Tharos napsal(a):
To záleží na tom, jak hodně se od sebe takové verze 1.0 a 2.3 liší. :) Jinak řečeno záleží na sémantice Tvého verzování.
Pokud například děláš napříč major verzemi větší změny s BC breaky a napříč minor verzemi zpětnou kompatibilitu udržuješ, mohlo by pro Tebe být výhodné mít pro každou major verzi samostatný modul (v duchu
Api:V1:<Presenter>
,Api:V2:<Presenter>
…) a ty minor verze si řešit už jen nějakým parametrem v presenteru…Ale vhodných přístupů je více. :)
Díky!