【问题标题】:Are there any htaccess or allow-files to enable Cross Site Scripting? Javascript是否有任何 htaccess 或允许文件来启用跨站点脚本? Javascript
【发布时间】:2014-01-28 18:24:23
【问题描述】:

我需要向不同域的 PHP 脚本发送和加载 JSON 数据,并且在传递变量时,没有返回任何内容。

domain1.com/display.php(有 Jquery $post() 例程来发送和加载数据)到 domain2.com/data.php (php 脚本输出 JSON 数据)

当然,这是由于浏览器安全性限制了跨站脚本内容。

我读过一些关于 JSONP 的文章,但这只是额外的步骤。

我记得我以前做 FLASH 的时候,我只是将一个策略文件上传到另一个域的服务器上,我将从那里加载数据,一切都会正常工作。

JavaScript 有类似的东西吗?如果没有,为什么不呢?!在我看来,这是一个合法、无忧的解决方案,与 JSONP 方法一样安全,甚至更安全。

问候

【问题讨论】:

  • 不,没有办法通过服务器上的设置来影响这一点。您要么必须从域下载脚本,然后进行查询,要么必须创建一个 PHP(或任何其他服务器端脚本),它将为您将请求中继到其他域。
  • 感谢您的确认,虽然这是个不幸的消息。我对 PHP 没有任何问题,但这次是 JS 函数需要加载数据。

标签: javascript cross-browser same-origin-policy


【解决方案1】:

既然您说“需要加载数据的是 Javascript”,我认为这是在某些浏览器中运行的。在这种情况下,据我所知,浏览器正在强制执行安全性,并且摆弄服务器(脚本)将无济于事。

Chrome 有一个关闭 XS 安全性的命令行选项(--disable-web-security),而 Firefox 在 about:config 中有一个设置(我想,现在找不到它......抱歉) .

但我想这些安全设置首先是有原因的...... ;-)

【讨论】:

  • 谢谢。也许如果我绝望了,我会在浏览器中为我的 Intranet 应用程序关闭网络安全功能.. 哈哈
【解决方案2】:

您是否要在客户端上加载它?使用 PHP+cURL 在服务器端应该没问题。如果您确实需要在客户端加载跨域内容,您可以使用Cross Domain jQuery plugin(内部使用 YQL)

【讨论】:

  • 谢谢,但这仍然是另一个过程/依赖。我试图避免更多的复杂情况,尽量保持简单/简单。
猜你喜欢
  • 2013-03-29
  • 2014-05-20
  • 1970-01-01
  • 2018-10-27
  • 2016-02-22
  • 2013-11-07
  • 2021-09-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多