防止在window.location中使用javascript

前端之家收集整理的这篇文章主要介绍了防止在window.location中使用javascript前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个页面,它从查询字符串中的参数重定向到url,如:
page.html中?的redirectUrl =的index.html
页面内我有这样的代码
window.localtion.href = redirectUrl;
通过参数使用重定向url是必须的.该页面包含安全的敏感数据.有人可以用 javascript制作网址:
?page.html中的redirectUrl = JavaScript的:警报(的document.getElementById( “密码”)值)
安全数据可能被盗.

如何防止绕过javascript代码到window.localtion.href?

解决方法

您可以尝试将URL放在 anchor element中并检查协议:

var anchor = document.createElement("a");
anchor.href = redirectUrl;

if(anchor.protocol != "javascript:") {
    window.localtion.href = redirectUrl;
}

但是,我不确定浏览器支持对此有多好,因为MDN将其列为HTML5功能.

猜你在找的Windows相关文章