Rubrique précédente: Encoding (Codage)Rubrique suivante: Modèles de conception


Groupement d'API et contrôle de version

Les API de BFC sont regroupées à l'aide du préfixe d'application BFC dans l'URL. Le préfixe d'application suivra directement l'hôte dans l'URL.

Toutes les API prennent en charge le contrôle de version. Les numéros de version d'API sont relatifs à l'API elle-même, et non à BFC. Ainsi, la version d'API ne doit pas changer lorsque la version de BFC est modifiée. Une version d'API est composée de deux parties : le numéro majeur et le numéro mineur. Plusieurs versions d'API peuvent coexister à la fois. Les procédures pour arrêter la prise en charge d'une version seront identifiées ultérieurement, mais la rétrocompatibilité ne sera jamais interrompue dans une version où seul le numéro d'API change. Les enregistrements de charge utile peuvent changer d'une version à l'autre. L'URL utilisée pour identifier les versions d'API identifie également la version d'enregistrement. L'enregistrement lui-même ne contient pas de numéro de version. Toutefois, quelques API peuvent inclure la version dans le nom de l'enregistrement.

Initialement, les API de BFC seront disponibles dans la version 3.5.0 de BFC. La version d'API initiale sera 1.0. Un client demande une version d'API en établissant une session avec un URI de connexion de version explicite. Toutes les versions de BFC prendront en charge un URI de connexion de version explicite pour chaque version d'API prise en charge. Aucun URI autre que la connexion ne contiendra de numéros de version explicite.

Exemples d'URL pour la version initiale :

https://<bfchost>:8443/BFC/1.0/login
https://<bfchost>:8443/BFC/...

Si, hypothétiquement, une version future de BFC contenait une modification au niveau des API de la grille et continuait à prendre en charge l'API 1.0, les URL suivantes pourraient être prises en charge dans la nouvelle version :

https://<bfchost>:8443/BFC/1.0/login
https://<bfchost>:8443/BFC/1.1/login
https://<bfchost>:8443/BFC/grids/...

Notez que la version 1.1 pourrait également contenir de nouvelles API qui n'existaient pas dans la version 1.0, auquel cas de nouvelles URL pourraient être introduites:

https://<bfchost>:8443/BFC/servers/...

Un client connecté à l'URI 1.0 n'aurait pas accès au nouvel URI de serveurs : les tentatives d'accès renverraient une erreur HTTP 404.