Heim  >  Fragen und Antworten  >  Hauptteil

java - 为什么过滤器只可以解决post请求的乱码问题??

PHP中文网PHP中文网2741 Tage vor373

Antworte allen(2)Ich werde antworten

  • 巴扎黑

    巴扎黑2017-04-18 10:37:18

    并不是只能解决post编码,而是characterEncoding只对body有效。
    http有很多method比如像put方法也是有body的。
    即使你使用post如果url中存在中文query parameters一样需要针对url设置编码。

    Antwort
    0
  • PHP中文网

    PHP中文网2017-04-18 10:37:18

    1、因为很少有人用GET方式传递中文内容,至于过滤器为什么只解决POST方式中文传递乱码问题,我想不是技术性的问题,可能是设计者有意为之,希望引导我们多使用POST方式。就好比要求大货车像客车一样能载很多人,对于设计大货车的人而言,他是不会太考虑这样的情况。

    2、GET方式传递中文乱码的问题也不是不能解决,解决方法也很简单,但是不推荐,因这种方法对POST方式不通用。样例代码如下:

    String username = request.getParameter("username");
    username = new String(username.getBytes( "iso-8859-1" ), "utf-8");

    Antwort
    0
  • StornierenAntwort