Javascript 隔离iframes会话
我有6个iFrame,它们来自同一个域,但具有不同的url和子目录。它们都使用html标题“set cookie”设置了一个名称相同但值不同的cookie。我需要把他们的饼干分开,这样他们就不会互相干扰了 下面是一个示例代码。谢谢Javascript 隔离iframes会话,javascript,html,iframe,Javascript,Html,Iframe,我有6个iFrame,它们来自同一个域,但具有不同的url和子目录。它们都使用html标题“set cookie”设置了一个名称相同但值不同的cookie。我需要把他们的饼干分开,这样他们就不会互相干扰了 下面是一个示例代码。谢谢 <html> <head> <style type="text/css"> body, table { margin: 0; padding: 0; height: 1
<html>
<head>
<style type="text/css">
body, table
{
margin: 0; padding: 0; height: 100%; width: 100%; overflow: hidden; scrolling=no; position:absolute;;
}
iframe
{
height: 100%; width: 100%;
}
</style>
</head>
<body>
<table>
<tbody>
<tr>
<td>
<iframe id="1" src="http://example.com/1"></iframe>
</td>
<td>
<iframe id="2" src="http://example.com/2"></iframe>
</td>
<td>
<iframe id="3" src="http://example.com/3"></iframe>
</td>
</tr>
<tr>
<td>
<iframe id="4" src="http://example.com/4"></iframe>
</td>
<td>
<iframe id="5" src="http://example.com/5"></iframe>
</td>
<td>
<iframe id="6" src=http://example.com/6></iframe
</td>
</tr>
</tbody>
</table>
</body>
身体,桌子
{
边距:0;填充:0;高度:100%;宽度:100%;溢出:隐藏;滚动=否;位置:绝对;;
}
iframe
{
高度:100%;宽度:100%;
}
您的用例是什么?因为这听起来有点奇怪。。。但是,容易做到;只要你的饼干
document.cookie = 'frameOne=foo';
document.cookie = 'frameTwo=bar';
并访问特定帧中所需的cookie
正如@Quentin所提到的;不要怀疑这是安全的。如果您希望分离身份验证,请使用不同的域、多登录系统或其他方式。然而;我觉得很奇怪,你想要一个用户登录6次。Cookies包括:
如果属性名称大小写与字符串“Path”不敏感地匹配,
用户代理必须按如下方式处理cookie av
如果属性值为空,或者
属性值不是%x2F(“/”):
将cookie路径设为默认路径
否则:
让cookie路径作为属性值
使用属性将属性附加到cookie属性列表-
路径的名称和cookie路径的属性值
饼干很好吃
配置您的服务器,使其为框架中的6项内容提供不同的路径。请注意,我没有访问服务器/域的权限。您能详细说明一下您到底在做什么吗?你带来了什么样的页面?好像你没有访问域的权限,你不应该能够阅读cookies…我尝试同时观看许多视频,但每个视频都有一个cookie,我希望每个iframe都有一个cookie…好吧,到目前为止还不错,但你为什么需要cookies呢?仅仅将视频嵌入iframe或html5元素有什么不对?您是否从自己的服务器嵌入视频?或者来自youtube或vimeo之类的服务?底部石灰:您的问题太过笼统,我们无法帮助您找到特定的解决方案……请注意,我没有访问服务器/域的权限。