zoukankan      html  css  js  c++  java
  • 通过Cookie来记住用户名出现乱码问题(URL编码)

    在登录时,提交一个中文名的用户名到服务器并返回到客户端的Cookie中时,

    这个过程会后台会报 java.lang.IllegalArgumentException (非法数据异常)

    -->在给前台发送Cookie之前对数据进行URL编码即可解决。

    -->URLEncoder.encode(username, "utf-8")

    后台解决编码问题后前台就可以接受到Cookie值,这时就会接收到类似:“%E7%AB%A5%E6%97%AD%E5%B9%B3”的数据,这时用iso8859-1的码表来读出的用户名信息。

    -->在取得Cookie值后对数据进行URL解码即可。

    -->username = URLDecoder.decode(username, "utf-8");

    上面的问题导致的主要原因是服务器默认是用iso8859-1的码表来编解码数据。则我们需要对数据进行URL编解码操作。

      

      Java中提供了进行URL编码和解码的类

      //将指定的字符串按照指定的编码转换为URL编码的形式

      URLEncoderstatic String encode(String name,String enc);

      //URL编码后的字符串按照指定编码解码为源字符串

      URLDecoderstatic String decode(String name,String enc);

     

    转载于:https://www.cnblogs.com/tongxuping/p/6914172.html

  • 相关阅读:
    w3c盒子模型与ie盒子模型
    前端入门
    连接数据库好用工具
    前端开发工具
    刚发现的取色工具
    使用val()另一个妙用------选中select/checkbox/radio的值
    z-index的妙用
    react生命周期函数
    react中虚拟dom的diff算法
    React中的虚拟DOM
  • 原文地址:https://www.cnblogs.com/twodog/p/12140429.html
Copyright © 2011-2022 走看看