最近在做一个项目,我的网站是www.a.com,但是需要取到www.b.com网站的cookie,折腾了很久,在同事的合作下。总算搞定了。

我是用java做的, 首先在www.a.com/a.vm文件中加入这句话:

src中的链接可以是b中的一个页面或者一个Action,都可以,我是用一个Action的。在b.com的这个action中,我的代码如下:

public ActionForward getSidAndUserid(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) {

String cartSid = this.getCartSid(request, response);

UserSession userSession = this.getUserSession(request, response);

CartServiceDelegate delegate = new CartServiceDelegate();

int basketSize = delegate.getBasketSize(userSession, cartSid);

StringBuffer buffer = new StringBuffer();

buffer.append("iBacketItemsNumber=" + basketSize + ";");

PrintWriter out;

response.setHeader("P3P","CP=/"NON DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa HISa TELa OTPa OUR UNRa IND UNI COM NAV INT DEM

CNT PRE LOC/"");

response.setHeader("Pragma", "No-cache");

response.setHeader("Cache-Control", "no-cache");

try {

out = response.getWriter();

out.print(buffer.toString());

} catch (IOException e) {

log.error("",e);

}

return null;

}

这样就可以得到想要的结果。

在a.vm文件中,若查看源代码的话,会看到

然后a.vm中要取到这个数据可以写如下代码:

这样就可以得到想要的数据了。

附: 我在Action中加入以下代码的原因是: response.setHeader("P3P","CP=/"NON DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa HISa TELa OTPa OUR UNRa IND UNI COM NAV INT DEM CNT PRE LOC/""); 因为在IE7中(IE6和Firfox都没有问题,只有IE7以上版本存在此问题),由于浏览器的隐私等级在IE7中默认为“中”,它会阻止保存可用来联系您的信息而没有您的明确同意的第三方Cookie。因此无法实现跨域取cookie的功能,除非用户手动把浏览器的隐私等级在IE7中默认为“低”。而以上的那行代码就可以解决这个问题,其中用到的是P3P技术。    写此篇文章,希望能对大家有所帮助。。。

java cookie p3p_P3P script src 解决cookie存取的跨域问题 java 终极解决办法相关推荐

  1. 【vue axios 跨域】cookie、origin等一步步递进的跨域踩坑 已解决

    前后端对接必出bug,最近连续对接了两个项目,对解决跨域有点感觉了,跟大家分享一下经验,都是血的教训- 两个项目都是Springboot+Vue(axios网络请求).本人主要负责前端,所以前端会分享 ...

  2. 解决Vue前后端跨域问题的多种方式

    1 前言 本文主要介绍借助解决Vue前后端跨域问题的几种方式 说到ajax请求,就不得不说下xhr(XMLHttpRequest)了,它可以说是鼻祖,但是实际开发中,我们不会直接使用它,而是进行二次封 ...

  3. 前端跨域的理解和解决跨域的方案详解(全)

    作为前端开发,我们遇到最多的应该就是跨域问题,对于萌新来说,跨域就是一道墙,不知所措,其实只要理解了跨域的含义和原理,解决它是不难的,今天给大家介绍下什么是跨域和跨域的解决方案! 什么是跨域? 跨域是 ...

  4. 用P3P header解决IE下iframe跨域访问时候session丢失的问题

    用P3P header解决IE下iframe跨域访问时候session丢失的问题 整合客户的登录时,或者其他一个网站通过iframe时,特别是一个http页面,访问一个https页面时,常常会sess ...

  5. PHP解决http和https跨域,php中http与https跨域共享session的解决方法

    这篇文章主要介绍了http与https跨域共享session的解决方法,需要的朋友可以参考下 遇到了HTTP.HTTPS协议下session共享解决cookie失效的问题,这里提供一个临时解决办法. ...

  6. 解决阿里云OSS跨域问题

    解决阿里云OSS跨域问题 现象 本人项目中对阿里云图片请求进行了两次,第一次通过img标签进行,第二次通过异步加载获取.第一次请求到图片,浏览器会进行缓存,随后再进行异步请求,保存跨域失效. 错误信息 ...

  7. Ajax跨域请求以及乱码解决

    Ajax跨域请求2种解决方法 1 ) 什么叫跨域请求,协议,域名,端口号,其中一样不同都称跨域; 第一种:使用script标签发送请求; //创建一个script标签; var v_element=d ...

  8. ajax 跨域请求_什么是跨域问题?如何解决?

    1. 概述 几个疑问: 什么是跨域? 如何判断是否产生「跨域」? 跨域,带来的问题? 跨域问题,解决思路? 2. 跨域:是什么 跨域的问题根源:浏览器的「同源策略」. 2.1. 同源策略 同源策略(S ...

  9. PHP的介绍及应用,ajax的介绍及应用,跨域问题及jsonp解决方法

    PHP(服务器编程语言) 服务器由环境(Apache),数据库(mysql),代码(HTML+css +js,php)组成. PHP必须在服务器的环境下执行 php与js最大的区别就是工作环境,PHP ...

最新文章

  1. js小效果-简易计算器
  2. python小白——进阶之路——day6天---字符串相关相关函数,格式化(format)
  3. 亲手完成四大企业实战项目,挑战Python全栈高薪岗位!
  4. IfSpeed 带宽计算
  5. 模拟服务器和客户端交互的python脚本
  6. 【Java】synchronized关键字笔记
  7. memcache两种客户端比较
  8. 手把手教你用ECharts画饼图和环形图
  9. nvidia-docker2 在 Kubernetes 上实践
  10. 手机modem开发(5)---LTE基本架构
  11. bzoj3627: [JLOI2014]路径规划
  12. python序列类型包括哪三种映射类型_python序列类型包括哪三种
  13. JDK8帮助文档生成-笔记
  14. 2.vue的不更新特性-重用机制和key属性-data及其他字段-vue生命周期
  15. 基于python的三维射线追踪库-ttcrpy详解(1)
  16. 用vant 自定义小程序tabBar
  17. 有向图和有权图的邻接矩阵表示法
  18. 程序员“真实”日常:每天敲代码不到 1 小时
  19. Fiddler模拟网络波动_xing2516_新浪博客
  20. HTML识别文本空格回车换行展示

热门文章

  1. client netty 主动发数据_Netty服务器无限循环给客户端发送数据
  2. esxi 安装网卡驱动
  3. ssm框架使用重定向报404_如何在 ASP.NET Core MVC 中处理 404 错误
  4. 西交大计算机考博学术英语,2018年西安交通大学考博英语真题
  5. vue项目中eslint检查警告——“Trailing spaces not allowed”
  6. js中return、return false 、return true各自代表什么含义
  7. 【五讲四美】之“讲思想”
  8. mac 终端 svn 命令
  9. bzoj4448 [Scoi2015]情报传递
  10. redhat7下对用户账户的管理