我正在其标头是一个响应:响应编码
内容长度:18588
内容类型:应用/ JSON;字符集= UTF-8
日期:星期三, 2015年12月2日12时58分51秒GMT
服务器:Apache-狼/ 1.1
有在将“application/json”编码的字符串发送到视图之前将其改为“text/plain; charset = ISO-8859-1”编码的可能性?我正在使用Spring MVC。 任何帮助将不胜感激。
我正在其标头是一个响应:响应编码
内容长度:18588
内容类型:应用/ JSON;字符集= UTF-8
日期:星期三, 2015年12月2日12时58分51秒GMT
服务器:Apache-狼/ 1.1
有在将“application/json”编码的字符串发送到视图之前将其改为“text/plain; charset = ISO-8859-1”编码的可能性?我正在使用Spring MVC。 任何帮助将不胜感激。
您的要求就是发送响应返回给客户端之前,设置所需的内容类型,所以使用httpServletResponse.setContentType("text/plain;charset=ISO-8859-1");
这是从方法javax.servlet.ServletResponse(setContentType(java.lang.String type)
下面摘自文档。
设置响应的内容类型被发送到客户端,如果 响应尚未提交。给定的内容类型可能包括 字符编码规范,例如, text/html; charset = UTF-8。如果在调用getWriter 之前调用此方法,则只会根据给定的内容类型设置响应的字符编码 。
此方法可能会反复调用以更改内容类型和 字符编码。如果在提交 响应后调用此方法,则此方法无效。如果在调用getWriter之后或在提交了 响应之后调用响应,则它不会设置响应的字符 编码。
如果 协议为此提供了一种方法,则容器必须将用于servlet响应的写入器的内容类型和字符 传送给客户端。在HTTP的情况下,使用 Content-Type标头。
请注意:您应该在将响应提交给客户端之前使用此方法。请参阅上面的摘录 - “如果在提交响应后调用此方法,则此方法无效,如果在调用getWriter之后或在提交响应之后调用该响应的字符编码,则不会设置响应的字符编码。”
在一个侧面说明:
你是否擅长这?如有任何问题,请告知我。 – hagrawal
ISO在2015?为什么不使用UTF-8? – fge
不,我希望控制器在应用程序/ json中返回它,但在将它发送到视图之前,我希望手动将响应的内容类型更改为“text/plain”。 api的响应是application/json,这是正确的,但由于某些要求,我需要手动将响应更改为text/plain。 –