gpt4 book ai didi

javascript - 在Java JVM中使用dom上下文执行JS

转载 作者:行者123 更新时间:2023-12-02 00:09:11 25 4
gpt4 key购买 nike

我目前正在做我的小项目,遇到了一个小(或大)困难。

我正在编写一个 Java 程序,它可以在网站上提取并运行一些 JavaScript 代码。我正在使用 ScriptEngineManager 在 JVM 中运行 JavaSript 代码,但由于无法访问 dom 上下文,一些代码(如 document.getInnerHtml().getElementById())无法工作。

有什么办法可以运行它吗?

最佳答案

所以,这是一个例子

 <!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8" />

<script type="text/javascript">

var a = document.getElementById('k');

</script>


</head>
<body>
<div style="display:none;visibility:hidden;" id="k">+((!+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+[])+(!+[]+!![]+!![])+(!+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![])+(+[])+(!+[]+!![]+!![]+!![])+(+!![])+(!+[]+!![]+!![]+!![]+!![]+!![])+(!+[]+!![]+!![]+!![])+(!+[]+!![]+!![]+!![]+!![]+!![]+!![]))/+((!+[]+!![]+!![]+!![]+[])+(!+[]+!![]+!![]+!![])+(!+[]+!![]+!![]+!![]+!![]+!![])+(!+[]+!![]+!![]+!![]+!![]+!![])+(+!![])+(!+[]+!![]+!![]+!![])+(!+[]+!![])+(!+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![])+(!+[]+!![]))</div>



</body>
</html>

所以,我的java程序将尝试运行“document.getElementById('k')”代码,但他看不到该HTML div在哪里,因此会抛出一个文档未定义的错误。

因此,Java 中的 ScriptEngineManager 可以让您评估 Javascript 代码,但它无法访问 html 文档,因此它不适用于这样的代码。

关于javascript - 在Java JVM中使用dom上下文执行JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58134473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com