Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在外部客户端中使用spring form编码器时,请求正文未正确编码和隐藏_Java_Spring_Spring Boot_Spring Cloud Feign - Fatal编程技术网

Java 在外部客户端中使用spring form编码器时,请求正文未正确编码和隐藏

Java 在外部客户端中使用spring form编码器时,请求正文未正确编码和隐藏,java,spring,spring-boot,spring-cloud-feign,Java,Spring,Spring Boot,Spring Cloud Feign,我已经为SpringOpenFaign添加了必要的依赖项,如中所述,并遵循了所述的Faign客户端配置 每当我发送内容类型为application/x-www-form-urlencoded的post请求时。请求正文未正确生成 EmailClient.java @FeignClient(name=“email”,url=“localhost:3000”, 配置=EmailClientConfiguration.class) 公共接口电子邮件客户端{ @PostMapping(value=“/em

我已经为SpringOpenFaign添加了必要的依赖项,如中所述,并遵循了所述的Faign客户端配置

每当我发送内容类型为application/x-www-form-urlencoded的post请求时。请求正文未正确生成

EmailClient.java

@FeignClient(name=“email”,url=“localhost:3000”,
配置=EmailClientConfiguration.class)
公共接口电子邮件客户端{
@PostMapping(value=“/email/send”)
响应发送电子邮件(@RequestBody-Map-RequestBody);
}
这是我的客户端配置类:

公共类EmailClientConfiguration{
@豆子
公共请求拦截器请求拦截器(帐户){
返回模板->{
模板标题(“内容类型”、“应用程序/x-www-form-urlencoded”);
};
}
@豆子
公共OkHttpClient客户端(){
返回新的OkHttpClient();
}
@豆子
Logger.Level假装loggerlevel(){
返回Logger.Level.FULL;
}
@豆子
公共解码器假装解码器(){
返回新的JacksonDecoder();
}
@豆子
公共编码器假装编码器(){
返回新的SpringFormEncoder(新的JacksonEncoder());
}
}
Map requestBody=new HashMap();
requestBody.put(“用户名”、“xyz”);
requestBody.put(“电子邮件”xyz@gmail.com");
requestBody.put(“key”、“xxx”);
当我在接口中调用sendEmail方法时,请求者标题设置正确,但请求正文作为

{{\n\'key\\:\'xxx\',\n\'email\':\'xyz@gmail.com\“,\n\“username\:\“xyz\”\n}”

有人能帮忙吗?为什么请求正文是这样发送的?而且请求正文也没有隐藏在服务器端,虽然内容类型是
application/x-www-form-urlencoded

,但在添加消费后效果很好

@FeignClient(name=“email”,url=“localhost:3000”,
配置=EmailClientConfiguration.class)
公共接口电子邮件客户端{
@PostMapping(value=“/email/send”,consumes=“application/x-www-form-urlencoded”)
响应发送电子邮件(@RequestBody-Map-RequestBody);
}