我有一个关于Web应用程序的想法,但我遇到了一些JavaScript问题。
假设应用程序需要获取客户端的网站 URL,显示它(在 iframe 或其他东西中)。然后它应该能够暂时调整Javascript的设计,我认为这被称为Javascript注入。(类似于浏览器的开发人员工具可以执行的操作。
所以问题是:这是跨域的javascript吗,如果是,我可以使用什么解决方案?,最简单的方法是什么?
在相关的说明中:如果用户将我的应用程序的一些javascript代码添加到他们的网站(例如某些API的工作方式),这会以任何方式有所帮助吗?
谢谢。
当您掌握现代Web浏览器如何工作的正确知识时,同源策略不适用(IE8+,当然所有其他浏览器总是领先于IE)
我通过使用postMessage和iframe进行跨浏览器通信专门解决了这个问题。此技术适用于IE8 +和所有现代浏览器。此外,请确保在标头中设置隐私策略,以便在IE中支持第三方cookie。
如果您去 kitgui.com 并尝试演示,您可以看到它实时工作。您也可以免费使用它。
如果他们在他们的页面中包含你的JS,那么JS正在他们的页面运行,你可以只使用标准DOM。
如果不是,则同源政策将阻止您访问他们的网站。
跨域的。 所以解决方案:服务器端语言
PHP,ASP.Net,Ruby on Rails等通过它加载他们的网站,然后你可以触摸它,因为它将是你网站上的副本。 不过,我会警告你,当使用像 CURL 这样的库时,这可能非常困难(至少根据我对 PHP 的 CURL 的经验)。
您可以使用书签将javascript代码添加到客户端的网页中。就像萤火虫精简版一样。