有效的nodejs代码在string到javascript对象
我的目标:我正在尝试将.js文件encryption成.jse文件,并且只在运行时解密(混淆nodejs代码)。
var ffi = require('ffi'); //libpcrypt.so是一个encryption和解密文件的库 var crypt = ffi.Library('./ libpcrypt',{ 'decrypt':['string',['string','string']] }); require.extensions [“。jse”] = function(module){ module.exports =(crypt.decrypt(module.filename,'out')); }; 的console.log(要求( './ routes.jse'));
我知道,用cosole.log()的源代码可以打印出来。
问题:解密代码是一个纯string,我无法将其转换为有效的JavaScript对象的导出。 有没有办法导出我解密的代码string?
这是您的解决scheme(未testing):
require.extensions['.jse'] = function(module, filename) { var content = crypt.decrypt(fs.readFileSync(filename), 'out') return module._compile(content, filename); };
快乐debuggingencryption模块;)
module.exports是一个你可以分配的对象(即:module.exports.newFunc = someFunction;)
JSON.parse(crypt.decrypt(module.filename, 'out'));
编辑所以你应该让你的encryption文件一个JSON类或检查出这个答案类似的问题加载“香草”Javascript库到Node.js