Die Versionierung von APIs (Application Programming Interface) hilft, Schnittstellen weiterzuentwickeln und Rückwärtskompatibilität bei Änderungen sicherzustellen, damit externe und interne Kunden bei jedem Update nicht betroffen sind.
Die Hauptschemata der Versionierung:
/api/v1/resource.Accept: application/vnd.company.v1+json./api/resource?version=2.In der Regel wird der Ansatz mit der Version in der URL verwendet, da er klar und transparent für alle Kunden ist.
Beispiel in Node.js (Express):
// Version 1 app.get('/api/v1/orders', ordersV1Handler); // Version 2 app.get('/api/v2/orders', ordersV2Handler);
Hauptmerkmale:
Reicht es aus, immer nur die letzte API-Version zu unterstützen?
Nein, Benutzer alter Anwendungen haben möglicherweise nicht die Möglichkeit, sofort auf die neue Schnittstelle umzusteigen, daher werden oft mehrere aktuelle Versionen unterstützt.
Kann man inkompatible Änderungen in einer Minor-Version der API zurück hinzufügen?
Nein, Minor-Versionen müssen strikt mit vorherigen kompatibel sein. Breaking Changes erfordern einen Wechsel der Major-Version.
Beeinflusst die Art der Versionierung (URL, Header, Parameter) die Sicherheit oder Leistung der API?
Nein, der Speicherort der Version hat an sich keinen Einfluss auf die technischen Eigenschaften, aber die URL-Versionierung lässt sich einfacher mit Monitoring- und Support-Tools analysieren.