zoukankan      html  css  js  c++  java
  • 保存cookie时编码问题

    项目中某些过滤条件需要persist,故可以放入Cookie中来实现。一般都没啥问题。

    但是项目里有些人名是德文的,populate的时候就出现问题了。

    存的时候:Biesenbach, Frank-Germany-Düsseldorf

    来的时候:Biesenbach, Frank-Germany-Düsseldorf

    显然是cookie编码的问题。

    解决方案是:

    1.确认webconifg中全局设置是否正确

    <globalization requestEncoding="utf-8" responseEncoding="utf-8"/>

    2.如果已经设置成utf-8的话,直接使用UrlEncode和UrlDecode来保存和取出Cookie值即可

    HttpUtility.UrlDecode(Request.Cookies["XXX"].Value)
    Response.Cookies["XXX"].Value = HttpUtility.UrlEncode(xxx)

    3.如果网站全局设置是gb2312的话。需要再加一层处理了

    Encoding encoding = Encoding.GetEncoding("UTF-8");
    HttpUtility.UrlDecode(str,encoding);

    存的时候不需要加一层处理,直接UrlEncode(如上)即可。

  • 相关阅读:
    list和set的区别
    tcp与udp协议的区别
    c3p0的数据库连接池
    mysql的连接
    HAVING 的使用 及笛卡尔积
    break-跳出内循环
    求素数(范围自改)
    1-100累加
    1-100累乘
    类实例:飞机大战
  • 原文地址:https://www.cnblogs.com/cqcmdwym/p/3092587.html
Copyright © 2011-2022 走看看