gpt4 book ai didi

java - 在 Java (Android) 中运行 javascript 文件

转载 作者:行者123 更新时间:2023-11-28 09:32:17 24 4
gpt4 key购买 nike

我有一个网站,我想从 Android 应用程序登录,为了提交包含正确信息的 POST 请求,他们需要一些哈希值。该网站的实现方式是通过 JavaScript 文件。我尝试跟踪它,但无法得到与 native 网站相同的结果。

所以我决定下载他们的 javascript 文件并在 java 中运行它。

我的问题是我无法弄清楚如何在其文件中运行特定方法。

这是到目前为止我的代码,它非常简单。

public void hashIt(String valueForMethod1, String valueForMethod2){
final ScriptEngineManager sem = new ScriptEngineManager();
ScriptEngine engine = sem.getEngineByName("JavaScript");
try {
engine.eval(new java.io.FileReader("res/raw/theirFile.js"));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (ScriptException e) {
e.printStackTrace();
}
}

任何帮助将不胜感激:)

谢谢

最佳答案

您可以使用Invocable来调用已加载的Javascript的方法

Invocable inv = (Invocable) engine;
inv.invokeFunction("foo", "bar"); // invoke foo("bar")

查看此page更深入的介绍

编辑

正如 Morrison Chang 所说,Android 上显然没有 javax.script 命名空间,因此您可以检查他在评论中给出的链接的线程。

关于java - 在 Java (Android) 中运行 javascript 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13592034/

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