日期:2014-05-17  浏览次数:20743 次

JS对象以及cookie跨域问题
我当前有一个应用app,其中有一个页面a.jsp   通过iframe标签包含了另一台主机上的应用app2的一个页面b.html,对于app2我是不能编辑的。我能不能在a.jsp中设置app2的cookie,或者在ajsp中操作b.html中的js对象或Dom对象?
请大侠指教。。
JavaScript Cookie 跨域

------解决方案--------------------
首先你说操作app2的cookie这个个人能力觉得好像是不行的,但是后者你完全可以处理啊
------解决方案--------------------
一般这样的情况下,你需要app2提供帮助.你将需要设置的cookie通过iframe的引用的src的查询字串方式传给它,由它自己来设置.
------解决方案--------------------
引用:
两台主机不在统一域名下,相互独立



不在同一主域名下,很难处理。
浏览器都是禁止跨主域操作JS和DOM对象的,不可能让你在页面中引了其他网站的页面,就能随意修改它的各种页面元素,很明显这是不安全的。

楼上的方法本质上还是由被调用项目自己来改cookie,需要被调用项目做修改。

可以考虑在APP项目中写一个控制器,a.jsp的iframe不再指向APP2项目的页面,而是指向该控制器,由该控制器通过httpClient读取APP2那个页面的内容,再写入response。这样等于把前台的跨域工作交给后台跨域,应该可以绕过浏览器的限制。