2017-03-22 3 views
0

Je suis actuellement en train de réfléchir à la façon de créer des documents API REST pour mon application avec prise en charge de plusieurs langues. Les points de terminaison, les noms de paramètres et les valeurs de retour doivent rester les mêmes, mais la description de chaque méthode REST que je souhaite fournir dans différentes langues prises en charge. Im utilisant Spring boot, données & repos et trouvé ce projet de docs ce qui me semble très utile. De toute façon, je n'ai pas trouvé d'informations dans les docs concernant le sujet/support de l'i18n.Documentation Spring Rest - support i18n

Est-ce que quelqu'un sait si les documents Spring REST supportent la génération du document API pour plusieurs langues (en général)?

Répondre

2

REST Docs ne fournit aucune prise en charge prête à l'emploi pour I18N, mais il devrait être assez simple de créer quelque chose au-dessus.

La partie principale avec laquelle REST Docs est impliqué et que je pense que vous voulez traduire sont les descriptions qui sont incluses dans les divers extraits. Plutôt que de coder en dur une description particulière, vous pouvez rechercher chacune d'elles dans un ResourceBundle:

ResourceBundle resourceBundle = ResourceBundle.getBundle("field-descriptions"); 

mockMvc.perform(get("/").accept(MediaType.APPLICATION_JSON)) 
    .andExpect(status().isOk()) 
    .andDo(document("example", responseFields(
     fieldWithPath("a").description(resourceBundle.getString("a")), 
     fieldWithPath("a.b").description(resourceBundle.getString("a.b"))))); 
+0

Très bonne solution – rajadilipkolli