accept-charset与Header P3P

作者:幻想曲 来源:幻想曲.net 时间:2009-04-01 18:43:00 

场景一:

A网站全站均为UTF-8编码,B网站全站为GB2312编码。

A网站提供一段JS代码供B网站调用,该代码会动态生成一个FORM表单,以收集提交上来的数据。

B网站此时开始提交数据,但提交上来的中文均为乱码。

现象的产生是由于二个网站编码不一致而导致的,一般情况下使二个网站的编码一致即可。

如果无法统一编码该怎么办?

FORM有一个accept-charset属性

<form method="post" action="..." accept-charset="utf-8">  
...   
</form>   

测试成功,但在IE下不成功,需要一个HACK来解决:
在form的onsubmit事件触发时动态改变document的编码,即:
onsubmit="document.charset='utf-8';"

场景二:

A网站提供一个页面供其它网站进行Iframe调用,该页面使用了SESSION,并进行了SESSION判断。

现象:

B网站IFRAME了A网站的页面,总显示SESSION过期,但直接在浏览器中打开该页面却又是正常的。

这是由于浏览器的安全性所致,SESSION依赖于COOKIE,A与B是二个完全不同的域,A网站没法去读取B网站下的COOKIE,所以SESSION也就失效了。

解决办法:

A网站的页面在输出头上附加一个P3P属性,值为CP=CAO PSA OUR即可。
如:

Response.AddHeader("P3P", "CP=CAO PSA OUR");   
if (Session[SESSIONKEY] == null)   
{   
   //TODO:其它操作   
}  

 

标签:UTF-8,编码,乱码,header
0
投稿

猜你喜欢

  • python实现simhash算法实例

    2023-11-02 23:26:30
  • Javascript 构造函数 实例分析

    2024-04-23 09:25:45
  • pandas多层索引的创建和取值以及排序的实现

    2023-07-09 23:12:54
  • Python参数类型以及常见的坑详解

    2023-04-16 13:52:33
  • Springboot如何同时装配两个相同类型数据库

    2024-01-25 08:51:33
  • 再论Javascript的类继承

    2010-06-26 12:48:00
  • 使用Perl DBI操作MySQL的一些建议

    2024-01-16 11:20:55
  • pytorch使用horovod多gpu训练的实现

    2022-01-07 16:01:18
  • python中使用pyhook实现键盘监控的例子

    2023-08-17 10:21:52
  • python GUI库图形界面开发之PyQt5美化窗体与控件(异形窗体)实例

    2023-07-19 00:34:06
  • pygame画点线方法详解

    2023-04-17 16:36:23
  • 利用Python实现绘制3D爱心的代码分享

    2021-03-30 23:25:12
  • pycharm使用anaconda全过程

    2023-07-19 04:57:12
  • Python中捕获键盘的方式详解

    2021-06-14 15:23:41
  • javascript 继承学习心得总结

    2024-05-13 09:36:47
  • php通过获取头信息判断图片类型的方法

    2023-11-10 00:31:50
  • Python 用三行代码提取PDF表格数据

    2023-10-08 18:54:57
  • 一文详解Python中logging模块的用法

    2022-03-27 23:09:38
  • PHP实现统计代码行数小工具

    2023-11-15 18:53:20
  • 使用SQL批量替换语句修改、增加、删除字段内容

    2024-01-21 16:52:39
  • asp之家 网络编程 m.aspxhome.com