Auparavant, l'auteur a écrit "le téléchargement de fichiers à l'aide de Spring Cloud Feign". Récemment, un collègue se connecte avec le système antique de force hérité et doit utiliser Feign pour mettre en œuvre la soumission de formulaire de formulaire. En fait, les étapes sont similaires. Les étapes jointes à cet article sont considérées comme un ajout à l'article précédent.
Ajouter des dépendances:
<dependency> <proupId> io.github.openfeign.form </rompuprid> <letifactive> feign-forwing </ artifactid> <version> 3.2.2 </-version> </dependency> <dependency> <proupId> io.github.openfeign.form </proupId> <Artifactid> feign-for-pring </letifactid> <version> 3.2.2 </ version> </ dépendance>
Fignez l'exemple du client:
@FeignClient (name = "xxx", url = "http://www.itmuch.com/", configuration = testFeignClient.FormSupportConfig.class) Interface publique TestFeignClient {@postmapping (valueCcoded_value {mediaTe.Application_Form_UrLenCcod {Mediatype.application_json_utf8_value}) void post (map <string ,?> queryParam); classe FormSupportConfig {@autowired private objectFactory <httpMessageConverters> MessageConverters; // Nouveau Encodeur de formulaire pour prendre en charge la soumission de formulaire @Bean Public Encoder FeignFormEcoder () {return new SpringForseCcoder (new SpringEncoder (MessageConverters)); } // activer le log @Bean public Logger.Level Logger () {return logger.level.full; }}}Exemple d'appel:
@Getmapping ("/ user / {id}") utilisateur public findbyid (@pathvariable long id) {hashmap <string, string> param = maps.newhashmap (); param.put ("nom d'utilisateur", "zhangsan"); param.put ("mot de passe", "pwd"); this.testFeignClient.post (param); retourner nouvel utilisateur ();}enregistrer:
... [TestFeignClient # Post] ---> post http://www.baidu.com/test http / 1.1
... [TestFeignClient # Post] Accepter: Application / JSON; charset = utf-8
... [TestFeignClient # POST] Contenu-Type: Application / X-WWW-FORM-Urlencoded; Charset = UTF-8
... [TestFeignClient # Post] Content-Length: 30
... [TestFeignClient # Post]
... [TestFeignClient # Post] Password = PWD & Username = Zhangsan
... [TestFeignClient # Post] ---> end http (corps de 30 octets)
Dans le journal, nous pouvons voir que Feign peut utiliser le formulaire de formulaire pour soumettre des données pour le moment.
Documents de référence
https://github.com/openfeign/feign-forme
https://stackoverflow.com/questions/35803093/how-to-post-forme-url-encoded-data-with-spring-cloud-feign
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.