繁体   English   中英

Chrome会阻止不同的来源请求

[英]Chrome blocks different origin requests

当脚本尝试从不同的源访问一个帧时,Chrome会阻止它并抛出异常

“Uncaught SecurityError:阻止具有源'提供者域'的帧访问具有源'mydomain'的帧。协议,域和端口必须匹配”。

谷歌浏览器更新后,我收到此错误。 有什么建议?

只有在符合同源策略的情况下,才允许在帧和/或窗口之间进行直接Javascript调用。 如果您的窗口和iframe共享一个公共父域,则可以将document.domain设置为“ domain lower ”)一个或两个,以便它们可以进行通信。 否则,您需要查看类似postMessage()API的内容

这是一个安全更新。 如果攻击者可以修改Web服务器中的某个文件(例如,JS),他可以使每个加载的页面下载另一个脚本(例如,键入密码或窃取您的SessionID并将其发送到自己的服务器)。

为避免这种情况,浏览器会检查同源策略

您的问题是浏览器正在尝试使用另一个域(或子域)上的脚本(带有Ajax请求)加载某些内容。 为避免它(如果它在您自己的网站上),您可以:

  • 复制您自己的服务器上的元素(但它将是静态的)。
  • 您可以更改HTTP标头以接受跨源内容。 有关详细信息,请参阅Access-Control-Allow-Origin文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM