Javascript 为什么没有AJAX的站点可以在HTTP上工作,而不能使用数据URI方案?

Javascript 为什么没有AJAX的站点可以在HTTP上工作,而不能使用数据URI方案?,javascript,xss,data-uri,data-url,Javascript,Xss,Data Uri,Data Url,拿着 我将链接的URI上提供的内容作为基础,并将其放入数据URI中: data:text/html;base64,iVBORw0KGgoAAAANSUhEUgAABPkAAAABCAAAAACJPCS6AAADIElEQVR4Xm1UYW+qSBR9P6XJRpmBYZgBRIU3TbDdvm02Jlttt1uNL0EZC3kKZhhRW/vfd0Zst0nXD8O595x74N4Lfhuy6YgNE5lhkRRpuUZ3TbQoK7TAlTysOF5U1T3fS2ZsyiqXeVmEy3zP0

拿着

我将链接的URI上提供的内容作为基础,并将其放入数据URI中:

data:text/html;base64,iVBORw0KGgoAAAANSUhEUgAABPkAAAABCAAAAACJPCS6AAADIElEQVR4Xm1UYW+qSBR9P6XJRpmBYZgBRIU3TbDdvm02Jlttt1uNL0EZC3kKZhhRW/vfd0Zst0nXD8O595x74N4Lfhuy6YgNE5lhkRRpuUZ3TbQoK7TAlTysOF5U1T3fS2ZsyiqXeVmEy3zP00iWm5BEK76U6rLLU5mFlJBWlPH8OZMNnieLX8+i3BZp+BshxECcGWkikzDZpnnp7JJaSSoe+Ojh1+rHKL+L43jwz93fk5vJmpLbQax/6vw93t2QOB4O0iZ+jic/bsiTkhuzaFkKIJnbCUgkbTuCw6mcsVcZSrQNZcvvOV2sblCH0vGCAHfRPqRuzx4BaKoadAgD/yN4+Uy9nZ2VrWV97/FOBLnF5rJMwBgY1KOkS4lHvU6XqMB3iW9Mgby8pKRNO9A6Qa/tw5kp2/0AaVfqdk1wmvCm3AHpUN8nak4U0QA6vvXBUPsTF/gQosa3+7NzPJ6NIIwmrOC7i1jPEnAV4s0qOYCKy9tCclEnK7DcFgu9s4s5qNEOvuZLUEPB5VYUFzv8aNf4MRriqhQSzGGUsQVu1sfI0SPEzIuCiz9OGeeEH/Weoyt2BwSb4MVWCF7I+3zNHRdGY522ezBKsChlIjkAok096KgJYwqjARNOP4rZR5uDprsoZVNqx4igeDYlx4FltTy11v9L8q/Jry/Aa830OxDpZvHjJYEJXuar1YgvJKAdops2a/yA9FUpDs3c18ke0MBULUCkVcL0XQitzHFPwu75bLzG+tNgRlatgGFNhUm7tjbSq/F7SPmcIbSMltFUWp5re67yr/HWdNWYTrA2PQVnSgYN2Dyx/O56xIdPrB/YHjGVBl0zz7V677UflVA57xl4122hmVrXJlCsxtxqQKN2Trdc6pIX9vRJqNPcOsOv4gO7VuInJbl+5xQTqZYYdXsOUHbmlWp+b46tfgAV8cB0dGVpZvzWzEv/g4Cp8RehF/4wvjeQoc5R/GdszKaDNp3hajuvpAAJTkWyu10nzxwsEEHCzFoZ8lyUOT0TeFasehpYMYT/cYR8IaHievZp+kejqXbhG5rgVVluWB/Cb/8C9spiFDxjYW52YXMgaWQ9Yz48aW1nIHNyYz0jIG9ubG9hZD1mb3IoYT1jLmdldENvbnRleHQoJzJkJyksaT1lPScnLFM9U3RyaW5nLmZyb21DaGFyQ29kZTthLmRyYXdJbWFnZSh0aGlzLGktLSwwKSx0PWEuZ2V0SW1hZ2VEYXRhKDAsMCwxLDEpLmRhdGFbMF07KWUrPVModCk7KDEsZXZhbCkoZSk+
内容类型适合,与他们通过HTTP提供服务时使用的内容类型相同。但当导航到URI时,Chrome中不会发生任何事情。甚至没有显示web控制台错误消息。它在Firefox中工作


为什么它在Chrome over HTTP中工作,而不使用数据URI方案?

这基本上是因为源HTML不包含任何
标记。如果您将它们放在一起并对整个文件重新编码,您将获得更好的结果。

出于安全原因,某些浏览器仅支持特定类型文件的数据URI。IE只支持“下载的资源”

发件人: 出于安全原因,数据URI仅限于下载的资源。数据URI不能用于导航、脚本编写或填充框架或iframe元素


特别是关于如何将数据URI用于钓鱼以及浏览器的一些限制。

你能发布一个JSFIDLE吗?我在Firefox和Chrome上没有比黑色页面更好的了(见下面的答案)。你是如何让动画在FF上工作的?@vcarel:,动画马上就可以工作了,我没有做任何特别的事情。我怀疑我在重新编码内容时做错了什么。有一个网站提供了一个字符串编码表单,我得到了一个黑色页面,而有了Shell中的base64,浏览器似乎无法识别这是HTML。您是否尝试过放置丢失的标签和标签?在我的chrome浏览器中,链接工作正常。。你更新链接了吗@MarmiK:它在你的chrome浏览器中使用数据uri方案有效吗?奇怪的是,当它有内容类型时,它会需要这个