我意识到这个跨站点脚本问题已经被涵盖了,但是作为网络开发的新手,我还有一些其他问题。
目前我正在测试我在我的 PC 上写的一个 html 文件,该文件连接到另一台机器上的 RESTFul Web 服务。我得到 status=0
。这是否被视为跨站点脚本?
如果服务器托管一个带有 javascript 的文件,并且该 javascript 文件对服务器自己的 Web 服务有 XMLHttpRequest
,这是否有效?
如果这些问题中有任何愚蠢的问题,我们深表歉意。
最佳答案
status=0
可以告诉我很多事情,如果不进一步了解您是如何达到这一点的,就很难确定它的确切含义。您可能正在使用 iframe,另一台计算机可能真的会告诉您状态为 0...我们不知道。
一般规则是,JS 来自 的位置并不重要,它将在加载 的位置执行数据。这就是使 Google js 归档 api 成为可能的原因(你知道,在整个分类上使用 https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.js
地点)。老实说,这不是安全问题。
当 js 文件试图访问另一个域(甚至子域)时,无论是通过操作 iframe 还是通过 XMLHTTPRequest,都会出现安全问题。正是在这一点上,浏览器将对脚本“进行打击”。
因此,您将难以通过硬盘驱动器 (file:///) 与任何互联网协议(protocol) (http|https) 进行 JavaScript 通信。
关于javascript - XMLHttpRequest 跨站点脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7030758/