要求浏览器探测另一个站点上的数据



想象一下,我拥有 MySite.com,我想众包 OtherSite.com 的正常运行时间监控。

当爱丽丝访问 MySite.com 我想让她的浏览器向 OtherSite.com 发送请求,然后向 MySite.com 报告请求是成功还是失败 OtherSite.com。

如果这种方法可行,我基本上可以在没有后端的情况下进行正常运行时间监控。

是否可以编写托管在 MySite.com 上的JS/HTML来实现这一点?还是被跨站点脚本或其他阻止机制阻止? 代码示例?

它被同源策略阻止,除非 OtherSite.com 通过Access-Control-Allow-Origin: *将所有起源列入白名单。

您可以做的是让 OtherSite.com 没有缓存的主机脚本或图像,并让 MySite.com 通过script元素或img元素请求该文件。如果请求成功,则 OtherSite.com 已启动;如果没有,则 OtherSite.com 已关闭(或至少不提供该文件(。您无法读取脚本/图像的内容,因为这会违反 SOP,但您可以检测加载它的成功或失败。

当然,您仍然需要一些聚合此信息的方法,这表明需要某种后端。

相关内容

  • 没有找到相关文章

最新更新