2016-11-26 133 views
0

我在想,如果可以在Java中检测HTML文件是否可以在浏览器中打开警告对话框。最好是无头的。例如,具有以下内容的文件被解析,它将返回true。检查HTML文件是否会打开JavaScript警报对话框

<html><script>alert("hey")</script></html> 

和下面会也返回true

<html><iframe src="javascript:alert(1)" onload="alert(2)"></iframe></html> 

,而是因为如果它在浏览器中打开(因为没有任何代码在语法上是不会打开的警告对话框下方将返回false正确,并且该部分不在标签中)。

<html><script>alert;,(123w)</script>alert(1)</html> 

我想过一种解决这个问题的方法,但它有缺陷。基本上,您会看到字符串alert(1)是否在文件中,等等。 问题在于,如果代码不在脚本标记或使其执行的标记内,则不起作用。一个例子,它不会工作是:以下将返回true,即使它不会实际打开弹出式<html>alert(1)</html>

这不是Android的顺便。感谢你的帮助!

+1

使用正则表达式检查