data URI:data:text/html,HTML代码 执行失败

data协议支持以下2种类型:

data:text/html,HTML代码
data:text/html;base64,base64编码的HTML代码
<a href="data:text/html;<img src=x onerror=alert(1)>">测试</a>

但是以上代码为什么没能成功执行javascript脚本?
而以下代码就可以:

<a href="data:text/html;base64,PGltZyBzcmM9eCBvbmVycm9yPWFsZXJ0KDEpPg==">测试</a>
阅读 77.9k
2 个回答

try

<a href="data:text/html,<img src=x onerror=alert(1)>">测试</a>

逗号(,)之后才是数据,参考rfc2397

data:text/html;HTML内容

这样是不行哒~

试试这样?

<a href="data:text/html;charset=utf-8,%3Cimg/src='x'onerror=alert(1)%3E">测试</a>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题