磅符号有骆驼信息吗?

时间:2014-06-26 07:21:50

标签: apache-camel

我面临的问题是Pound符号出现在我的消息中,骆驼路线, 当我的骆驼休息端点进入json请求时,它会被转换为"?"同样也会在日志中显示出来。

我已尝试通过将convertBodyTo标记字符集设置为utf-8来解决此问题,但它没有奏效。

使用的Camel版本是2.10。 区域设置为:en_US。

这是路线:

<from uri="jetty:http://localhost:8080/testService"/>
<camel:convertBodyTo type="String" charset="utf-8" /> <camel:log message="Message Body: ${body}" /> <to uri="jetty:http://localhost:8080/testEndpoints"/>

1 个答案:

答案 0 :(得分:2)

您需要知道客户端在POST JSON时使用的编码。浏览器应该在Content-Type标题字段中向您发送编码信息。

如果英镑符号显示为单个问号,则表示该流具有单字节编码。如果它是多字节然后用单字节编码读取它将显示为两个垃圾字符,而不是一个。如果Content-Type标头未指定编码,请尝试设置西方单字节编码ISO-8859-1而不是UTF-8,看看是否有效。由于您的语言环境是en_US,因此默认编码可能是US-ASCII