gpt4 book ai didi

javax.script 向 javascript 传递一个 Java 方法以用作回调

转载 作者:行者123 更新时间:2023-11-30 18:02:55 32 4
gpt4 key购买 nike

我正在使用 javax.script 将 javascript 代码嵌入到 Java 方法中。

在我的项目中,javascript 负责通过 websocket 发送异步 http 请求。收到响应后,我需要执行回调函数。

我想调用一个用 Java 编写的方法作为回调。

在此处的文档中:http://docs.oracle.com/javase/6/docs/technotes/guides/scripting/programmer_guide/它解释了如何在 javascript 中为接口(interface)实现 java 方法,但没有解释如何从 javascript 调用 Java 方法。

谢谢

最佳答案

不确定这是否正是您要查找的内容,但这里有一个代码示例,它向一些 javascript 代码提供 java 对象回调,稍后将回调该回调:

public class JsCallback{
public static void main(String[] args) throws Exception{

ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine engine = factory.getEngineByName("JavaScript");
engine.put("cb", new JsCallback());
engine.eval("println('Doing something in javascript here first');" +
"cb.apply('bar');");
}

public void apply(String s){
System.out.println("Back in java code here: " + s);
}
}

关于javax.script 向 javascript 传递一个 Java 方法以用作回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16473544/

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