Java引用javascript中的function时btoa函数报错

javakbz javakbz 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
Java code:
String jsFileName = "D:\\parseSc.js";
log.debug(jsFileName);
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("javascript");

FileReader reader = new FileReader(jsFileName);
engine.eval(reader);
if(engine instanceof Invocable) {
Invocable invoke = (Invocable)engine;
// 调用weorjjigh方法,并传入参数

Object result = invoke.invokeFunction("weorjjigh", video_page_url);
try {
invoke.invokeFunction("noweorjjigh");
} catch (NoSuchMethodException e) {
// expected
}

}
reader.close();

js code:

var u = {};
u.cache = btoa(c - v + "");
a(n, t);
var d = function(e) {
var a = [], n = 0;
for (; n < 64; ) {
a[n] = 0 | Math.abs(Math.sin(++n)) * 4294967296
}


报错:Exception in thread "main" javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "btoa" is not defined. (<Unknown source>#38) in <Unknown source> at line number 38
...全文

相关推荐

java和js相互base64编码解码

`调用.txt`文件可能是测试这两种编码解码方法的简单脚本,它会调用Java和JavaScript中的函数,并比较结果是否一致,确保在不同环境下的Base64编码和解码是兼容的。

浪浪山老周

JS逆向实战:使用WT-JS_DEBUG工具定位与复现AES加密参数

JavaScript逆向工程是网络安全和数据采集领域的关键技术,其核心原理在于通过动态调试技术,分析混淆或加密的前端代码逻辑。这项技术的价值在于能够绕过客户端保护机制,实现数据接口的合法调用与安全测试。在实际应用中,常需处理AES等对称加密算法保护的参数。本文以AES加密参数为例,结合WT-JS_DEBUG_V1.8.3调试工具,详细演示如何通过动态执行跟踪和内存Hook技术,定位加密函数、提取密钥与IV等关键参数,并最终在本地环境中复现加密过程。内容涵盖从环境准备、断点设置、调用栈分析到代码还原的完整流程

weixin_30399155

base64,java与JavaScript实现

对于现代浏览器来说,可以直接使用`window.btoa()`和`window.atob()`函数来完成Base64的编码和解码。

白壹贰

Java使用Google Zxing生成二维码的例子

例如,JavaScript函数`submit1()`负责获取用户输入的关键词,然后动态创建包含二维码的HTML表格,每个关键词对应一行,其中包含一个显示二维码的`<img>`标签。

weixin_38636655

Captcha:使用Java脚本的验证码

JavaScript会比较输入的验证码和存储在sessionStorage中的验证码,如果匹配则发送请求到后端进行验证:```javascript$("#captcha-form").on("submit

实践千百次练习而
评论 2
收藏 已收藏
分享
返回顶部
javakbz
JavaScript 87,984 成员 224,681 内容