【发布时间】:2018-03-09 10:12:40
【问题描述】:
我正在开发一个使用 WS 对外部 api 进行异步调用的播放应用程序,但我无法弄清楚为什么我在使用时会丢失 unicode 字符
例如,如果他们的 api 正在生成类似的东西:
{ "title": "Plück, Franke" }
并通过以下方式调用 api:
ws.url("http://example.org/stuff/").get().map { response =>
println(response.body)
Ok....
将打印以下内容:
{ "title":"Plück, Franke" }
我正在尝试查找是否需要将标头参数传递给 WSRequest 对象以保留字符集? setContentType 方法的WSRequest documentation 声明
"设置内容类型。如果请求体是String,并且没有charset 如果包含参数,则默认为 UTF-8。”
我错过了什么?
谢谢! 啊
【问题讨论】:
-
准确指出lib版本并粘贴带有标题的请求转储
-
响应的实际编码是什么?响应中是否有
Content-Type标头,是否有编码值? -
我使用的是 2.6.3:响应中没有编码值,Map(Date -> Buffer(Wed, 27 Sep 2017 20:15:56 GMT),Server -> Buffer( Jetty(8.1.5.v20120716)), Content-Type -> Buffer(application/json), Cache-Control -> Buffer(private, must-revalidate, max-age=0), Content-Length -> Buffer(9822 ), X-Content-Type-Options -> 缓冲区(nosniff))
标签: scala playframework playframework-2.0