J'utilise feign au printemps-nuage, j'ai un problème.la valeur de la requête contient `{aa%` cause feign retourné le code de statut http 400
Ceci est mon défaut de client feign.
@FeignClient("food-service")
public interface FoodService {
@RequestMapping(value = {"/food"},method = {RequestMethod.GET})
List<Food> find(@RequestParam("name") String name);
}
foodService.find("{co%%");
cet appel sera retourné le code d'état 400.
Ensuite, je passe en revue le code, et je trouve ce code dans la classe RequestTemplate:
private String encodeIfNotVariable(String in) {
if (in == null || in.indexOf('{') == 0) {
return in;
}
return urlEncode(in);
}
La méthode encodeIfNotVariable
appelée dans la requête (nom String, String ... valeurs).
Cela signifie que si la valeur contient {
et dans le premier, la valeur ne peut pas être codée.
Comment puis-je résoudre ce problème?