7回答

0收藏

execjs问题

问答交流 问答交流 4830 人阅读 | 7 人回复 | 2019-11-27


大佬们刚学js逆向  百度无果遂来疑问




用execjs执行一段js代码,
(r) {
        o = r.()(=== o) {
            t = r.t > && (r = + r.() + r.(Math.(t / ) - ) + r.(-))
        } {
            (e = r.()C = h = e.f = []h > CC++)
                !== e[C] && f..(f(e[C].()))C !== h - && f.(o[C])g = f.g > && (r = f.().() + f.(Math.(g / ) - Math.(g / ) + ).() + f.(-).())
        }
        u = l = + String.() + String.() + String.()u = !== i ? i : (i = window[l] || ) || (d = u.()m = Number(d[]) || s = Number(d[]) || S = []c = v = v < r.v++) {
            A = r.(v)> A ? S[c++] = A : (> A ? S[c++] = A >> | : (=== (& A) && v + < r.&& === (& r.(v + )) ? (A = + ((& A) << ) + (& r.(++v))S[c++] = A >> | S[c++] = A >> & | ) : S[c++] = A >> | S[c++] = A >> & | )S[c++] = & A | )
        }
        (p = mF = + String.() + String.() + String.() + (+ String.() + String.() + String.())D = + String.() + String.() + String.() + (+ String.() + String.() + String.()) + (+ String.() + String.() + String.())b = b < S.b++)
            p += Sp = (pF)p = (pD)p ^= s> p && (p = (& p) + )p %= p.() + + (p ^ m)
    }
报错如下:

execjs._exceptions.ProgramError: TypeError: u.split is not a function




有大佬能告知一下怎么解决吗
分享到:
回复

使用道具 举报

回答|共 7 个

葫芦娃他爷爷啊

发表于 2019-11-27 18:55:13 | 显示全部楼层

你python调用的代码呢
回复

使用道具 举报

葫芦娃他爷爷啊

发表于 2019-11-27 18:56:03 | 显示全部楼层

就是说u没有split这个方法
回复

使用道具 举报

sml2h3

发表于 2019-11-27 19:21:09 | 显示全部楼层

首先你要确保变量u在执行u.split的时候,u是一个字符串
回复

使用道具 举报

花儿谢了

发表于 2019-11-27 19:34:21 | 显示全部楼层

确实是你代码执行的问题,但不是execjs的问题,你需要捋捋你js代码的逻辑。
回复

使用道具 举报

悦来客栈的老板

发表于 2019-11-27 23:05:36 | 显示全部楼层

我一般先用node调通了再用execjs这个库来调用!这样可以避免各种问题,因为你node都没有调通,用execjs肯定是不行的。
回复

使用道具 举报

zengyd

发表于 2019-11-28 11:41:16 | 显示全部楼层

看评论也能学到好多知识!
回复

使用道具 举报

杰神荡漾

发表于 2019-11-28 14:51:36 | 显示全部楼层

谢谢各位大佬 解决了 应该是node的问题  我用了js2py就跑通了
回复

使用道具 举报