问题标签 [p3p]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
internet-explorer - 如何使用 P3P 标头设置会话 cookie (Omeka / Zend)
我正在使用 Omeka(基于 Zend 框架)开发一个门户,该门户在 iFrame 中的不同 URL 上运行,并且如果隐私设置高于或低于任何值,则在 IE 拒绝会话 cookie 的问题中运行。
我添加<?php header('P3P: CP="ALL DSP COR CUR ADM TAI OUR IND COM NAV INT"'); ?>
到我的主题的标题页,但是当我检查 Fiddler 时,它说 Cookie 是在没有 P3P 标题的情况下发送的。我怀疑这是因为在启动主题标题之前设置了 cookie。
最好的地方是在哪里包含 P3P 代码以确保它们与 cookie 本身一起发送?可以设置bootstrap.php
还是有别的地方?我试图在服务器级别设置它,但这似乎将我的 Apache 服务器发送到 Nirvana。应用程序 Omeka 基于 Zend 框架。
感谢您的任何意见。
internet-explorer - 无法使用 IE 和 Chrome 在 iframe 中登录网站。但我可以用 Safari 和 FF
在 IE 和 Chrome 上,如果我允许浏览器设置中的第 3 方 cookie,我可以登录。
但是,这不是一个实用的解决方案。
关于 IE:我是否需要创建 P3P 策略并在我的 iframe 网站中引用它?
关于 Chrome:Chrome 一直运行良好。他们最近是否更改了 cookie 政策?
我一直都能登录到我的 iframed 网站。有没有其他人经历过这种行为?
任何帮助表示赞赏,欢呼。
javascript - IE8 - IE10 跨域 JSONP cookie 头痛
由于我完全无法控制的决定,我处于以下情况:
我在 catalog.org 上有一个产品列表
单击产品上的“添加到购物车”按钮向 secure.com/product/add/[productKey] 发出 AJAX JSONP 请求,该请求将购物车记录保存到数据库,使用购物车 ID 设置 cookie,并返回 true响应(如果失败,则返回 false)
返回catalog.org,如果响应为真,则向secure.com/cart/info 发出另一个AJAX JSONP 请求,读取购物车ID cookie,获取记录,并返回购物车中的商品数量
再次返回 catalog.org,读取响应并更新页面上的元素,显示购物车中的商品数量(如果有)
此时,单击 catalog.org 上的“转到购物车”按钮会在 secure.com 上显示购物车摘要
这在 Firefox 17、Chrome 32 和 IE 11 中运行良好。它也适用于我们的开发和测试环境中的 IE8 - IE10,其中 catalog.org 是 catalog.development.com,catalog.test.com 和 secure.com 是安全的。 development.com 和secure.test.com 分别。
但是,在我们部署到生产环境后,这在 IE8 - IE10 中停止工作。将产品添加到购物车后,购物车中的商品数量会在 catalog.org 上成功更新。然后,单击 catalog.org 上的“转到购物车”按钮后,secure.com 上的购物车摘要什么也没有显示,因为它无法读取 cookie。在 IE 开发者工具中转到缓存 >“查看 cookie 信息”显示没有购物车 ID cookie。它应该在那里,就像它在其他浏览器以及我们的开发和测试环境中一样。
我相信正在发生的事情是 IE 正在阻止第三方 cookie。我们已为secure.com 上的所有请求添加了一个P3P 紧凑策略标头,但仍未设置cookie。我们设置的标题是:
为什么在 IE8 - IE10 中添加紧凑策略标头不能解决此问题?如何解决此问题以在所有版本的 IE 中工作?
解决方案
下面有几个好主意。我接受了@sdecima,因为它听起来最有希望。我们最终结合了其中一些想法,但设法避免了 XDomainRequest:
- 单击产品上的“添加到购物车”按钮向 secure.com/product/add/[productKey] 发出 AJAX JSONP 请求,该请求将购物车记录保存到数据库,使用购物车 ID 设置 cookie,并返回 true响应(如果失败,则返回 false)
我们更改了 secure.com/product/add 上的操作以返回一个 JSON 对象,其中包含一个指示成功或失败的布尔值和购物车 ID。
- 返回catalog.org,如果响应为真,则向secure.com/cart/info 发出另一个AJAX JSONP 请求,读取购物车ID cookie,获取记录,并返回购物车中的商品数量
我们更改了回调函数以检查响应对象中的两个属性。如果成功并且购物车 ID 存在,我们会在页面上创建一个隐藏的 iframe。iframe的src
属性设置为我们添加到 secure.com 的新端点。此操作接受购物车 ID 参数并保存购物车 ID cookie。我们不再需要将 cookie 保存在 secure.com/product/add 操作中。
接下来,我们更改了 secure.com/cart/info 上的操作以接受购物车 ID 参数。此操作将使用购物车 ID 参数(如果存在)来获取购物车信息,否则仍会尝试读取 cookie。如果我们可以保证 iframe 已完成加载并且 cookie 已保存在 secure.com 上,则无需进行额外检查,但由于浏览器安全限制,我们无法知道 iframe 何时完成在 catalog.org 上的加载。
最后,CP="CAO PSA OUR"
仍然需要 P3P 标头才能在 IE7 - IE10 中工作。(是的,这现在也适用于 IE7 :)
我们现在有一个解决方案(尽管是一个非常复杂的解决方案),用于保存和访问在所有主要浏览器中都可以使用的跨域 cookie,至少在我们可以可靠测试的情况下。
我们可能会对此进行更多重构。一方面,此时对secure.com/cart/info 的第二个AJAX JSONP 请求是多余的,因为我们可以将原始请求中所需的所有信息返回到secure.com/product/add 操作(更改的附带好处该操作返回一个 JSON 对象——另外,如果出现错误,我们可以返回一条错误消息,指出它失败的确切原因)。
ios - 提交嵌入在 iFrame 中的表单在 iOS 7 中不起作用
在带有 的网站中,嵌入mydomain.tld
了包含托管表单的 iFrame 。otherdomain.tld
这两个站点都是在端口 80 上运行的非 SSL。
现在,此表单不会在运行 iOS 7 的 iPhone 5 上提交。我可以在选择“iPhone Retina(4 英寸 64 位)”时在 iOS 模拟器中重现它(“4 英寸”不会发生)只要)。
提交事件被触发(至少如果我通过 JavaScript 捕获它)但没有根据开发人员工具发出请求。
如果我直接打开 iFrame 源,表单将提交。
我在 Internet Explorer 上遇到了类似的问题,并且了解了P3P,并且可以解决发送特殊 P3P 标头的问题:
但是对于 Safari 提到的问题,这似乎不是问题。
Safari 和 iFrame 中的表单是否有任何已知限制?
powershell - 如何在 PowerShell 中运行 appCmd 以将自定义标头添加到默认网站
请帮助我弄清楚如何正确转义参数,以便它们在 powershell 内调用 appcmd 时起作用。
我的脚本如下所示:
在 powershell_ise 中运行时的输出是这样的:
这适用于命令行
谢谢你的帮助!
wordpress - 关于 wordpress 响应的 p3p 策略未发送策略
我已经创建了 p3p 文件,将它们放在 w3c 文件夹中,但 fiddler2 仍然返回没有 p3p 的设置 cookie?
iis上的wordpress网站...
试图让它返回设置 cookie 和 P3P ......
我知道这是旧东西,但客户想要它。
我错过了什么?
jquery - 在 div 中加载谷歌地图 url
我用谷歌地图引擎定制了一张地图,我有相应的网址。我只想使用简单的 load() 方法将这个 url 加载到 div 中。不幸的是,我收到一条 P3P 错误消息。
我得到的错误:
这不是 P3P 策略!有关详细信息,请参阅http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657。链接中的信息没有预期的那么有用。
有什么提示吗?
如何完成 P3P 策略并加载地图?
html - 在 HTML 中设置 P3P 代码
我已经研究了很多这个主题。但是如果可以在纯 HTML 中设置 P3P 标签,我没有得到一件事?就在第一个标签之前。
我试图让 iFrame 登录解决方案在 IE 中工作。
我刚刚在 PHP、ASP.NET 等中找到了代码示例,但不是在普通的 HTLM 中,如果可能的话。
asp.net - p3p 标头在 chrome/safari 中不起作用
我有一个将 SSO 解决方案与另一个站点一起使用的站点。它通过在站点中嵌入 iFrame 以进行登录来实现此目的。
我遇到的问题是,使用 Chrome 和 Safari,当禁用 3rd 方 cookie 时,它不会保存登录 cookie。
该站点使用 ASP.net。我在 IIS 中添加了值为 CP="CAO PSA OUR" 的 P3P 标头。它仍然无法正常工作。是否需要为 Safari 和 Chrome 做其他事情?
jsp - IE8 的 P3P 设置标头似乎不起作用
下面的 P3PsetHeader
代码存在于我的 CASresponse jsp 中,但似乎不起作用,
我在这里错过了什么吗?我无法在 IE8 中获取我的第三方 cookie。
标头中是否需要policref?我应该为我的域设置 p3p 策略吗?
由于它是一个 CAS 请求,我应该在所有请求进入 CAS 时设置它吗?假设我有 entryFilter.java 我应该在那里设置 P3P 标头吗?或者在创建 cookie 之后。
当 IE 将 302 重定向到我的 serviceUrl 时,我无法保留 cookie。