java 请求正文UTF-8字符处理[已关闭]

ttp71kqs  于 2023-03-28  发布在  Java
关注(0)|答案(1)|浏览(171)

**已关闭。**此问题需要debugging details。当前不接受答案。

编辑问题以包含desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将有助于其他人回答问题。
22小时前关门了。
Improve this question
我有一个Sping Boot 应用程序,它的post方法在其请求体中包含UTF-8字符。当我发送一个UTF-8字符的请求时,我的应用程序无法处理它,请求显示为FATHKöSE。我在App Config文件中通过设置消息转换器,请求Map处理程序适配器等尝试了各种解决方案。我的方法消耗Application/JSON,无论是在代码方面还是 Postman 方面。你知道关于这个的任何解决方案吗?
我从 Postman 发送名称Fatih Köse,它在我的应用程序中的FATıHKöSE结果.

j13ufse2

j13ufse21#

首先确保 Postman 配置是好的,检查字符编码的请求正文的UTF-8,去“正文”选项卡,点击“文本”按钮,然后选择“UTF-8”从下拉菜单中。
之后,如果仍然出现问题,您可以通过在Sping Boot 应用程序中将以下行添加到application.properties来设置请求的字符编码;

spring.http.encoding.charset=UTF-8
spring.http.encoding.force=true

您还可以检查JSON解析器是否正确处理UTF-8字符。默认情况下,Sping Boot 使用JacksonJSON解析器,它应该正确处理UTF-8字符。但是,您也可以将这些行添加到application.properties以确保Jackson使用UTF-8编码:

spring.jackson.default-property-inclusion=non_null
spring.jackson.encoding=UTF-8

相关问题