首页 > 编程语言 >在Node.JS中,调用JShaman的Web API接口,加密JS代码。

在Node.JS中,调用JShaman的Web API接口,加密JS代码。

时间:2023-04-15 12:31:55浏览次数:42  
标签:Node Web code jshaman res js var JS true

在Node.JS中,调用JShaman的Web API接口,加密JS代码。

源码

var js_code = `
	function NewObject(prefix)
	{
		var count=0;
		this.SayHello=function(msg)
		{
				count++;
				alert(prefix+msg);
		}
		this.GetCount=function()
		{
				return count;
		}
	}
	var obj=new NewObject("Message : ");
	obj.SayHello("You are welcome.");
`;
var config = {
    //压缩
	"compact": true,
	//平展控制流
	"controlFlowFlattening": true,
	//字符串阵列化
	"stringArray": true,
	//字符串加密
	"stringArrayEncoding": true,
	//禁用命令行输出
	"disableConsoleOutput": true,
	//反浏览器调试
	"debugProtection": true,
	//域名锁定
	"domainLock": ["www.jshaman.com","www.test.com"],
	//保留字
	"reservedNames": ["jshaman","test"]
}
var jshaman_url = "https://www.jshaman.com:4430/submit_js_code/";
var request = require('sync-request');
(function jf(js_code, config, jshaman_url){
		var res = request("POST", jshaman_url, {json:{
			"js_code":js_code,
			"vip_code":"your_vip_code",
			"config":config
		}})
		
		var json_res = JSON.parse(res.getBody('utf8'));
		if(json_res.status == 0){
			console.log(json_res.content);
		}else{
			console.log(json_res);
		}
    }
)(js_code,config,jshaman_url);

注:接口可能会有变化、请以JShaman官方公布的接口信息为准。

运行效果

在Node.JS中,调用JShaman的Web API接口,加密JS代码。_字符串

参数

上面的代码中,有加密参数的配置,如平展控制流、字符串阵列化,如要启用哪个功能,则给true值 ,如果不启用,则给false值。

多个文件

如果有多个js文件需要混淆加密,可以把js文件都压缩到一个zip文件里,在JShaman官网提交zip文件。但在Node.JS环境中,可以直接读取各js文件、用上面的方法提交代码,更为方便。

标签:Node,Web,code,jshaman,res,js,var,JS,true
From: https://blog.51cto.com/jsjiami/6192281

相关文章

  • json数据按照某一个相同键值进行分类成一个新的二维json数组
    1formatTreeData(checkNodes){2varmap={},3targetData=[];4checkNodes.forEach(item=>{5if(!map[item.groupKey]){6targetData.push({7value:item.groupKey,8label......
  • Python Web全栈工程师「课代表itspcool」
    PythonWeb全栈工程师核心代码,注释必读//下、栽、课、呈茄/:itspcool进入Python世界,打开编程之门Python语法基础一、标识符所谓的标识符就是对变量、常量、函数、类等对象起的名字。首先必须说明的是,Python语言在任何场景都严格区分大小写!Python对于标识符的命名......
  • momentjs学习笔记
    momentjs学习笔记文档:http://momentjs.cn/docs/#/get-set/参考:https://blog.csdn.net/yuan_jlj/article/details/117294481......
  • transtale.js v1.1
    functiongc(){varname="transLang=";varca=document.cookie.split(';');for(vari=0;i<ca.length;i++){varc=ca[i].trim();if(c.indexOf(name)==0)returnc.substring(name.length,c.length);......
  • 关于js对象遍历保证顺序的问题
    Object.keys(obj).sort().forEach(...),注:仅用于对象的key值是可定义顺序的,如key值为时间错,数字等,通过sort(),可默认按照数组大小排序(也可通过sort的自定义函数排序)object.keys/values()和forin不能保证对象传成数组或遍历的顺序友情链接1友情链接2......
  • js中的数组方法
    js中数组方法大全平常在写代码的时候,我们经常会用到数组这个类型,那么数组到底有多少方法,方法各自的作用又是什么呢?1.toString作用:把数组转换为数组值(逗号分隔)的字符串。示例:Array.toString()2.join作用:将所有数组元素结合为一个字符串。区别与toString,join可以规定分......
  • 给webpack提了一个pr之后......
    前言我不是标题党啊,是真的给webpack提了一个pr,提交之后,脑子里就是一句话:“纸上学来终觉浅,绝知此事要躬行”。欲知来龙去脉,听我娓娓道来。pr如下,<https://github.com/webpack/webpack/pull/16292>,目前还是unreviewed状态。\\阅读此文章你将会了解以下知识点,webstrom调试webpack源......
  • Three.js教程:3D场景中插入新的几何体
    推荐:将NSDT场景编辑器加入你3D工具链其他工具系列:NSDT简石数字孪生3D场景中插入新的几何体前面课程绘制了一个立方体效果,下面通过three.js的球体构造函数SphereGeometry()在三维场景中添加一个球几何体。SphereGeometry构造函数SphereGeometry(radius,widthSegments,height......
  • JS 实现网络测速
    JS实现网络测速一、背景知识在日常生活中,有时候感觉网络卡,就想测一下网速是多少(明知道卡,但是还是想看看是否真的卡,害)。这时候我们可能会打开测速网-专业测网速,网速测试,宽带提速,游戏测速,直播测速,5G测速,物联网监测-SpeedTest.cn,但是我们可以用JS写一个Demo......
  • 轻量级Web框架Flask(二)
    Flask-SQLAlchemyMySQL是免费开源软件,大家可以自行搜索其官网(https://www.MySQL.com/downloads/)测试MySQL是否安装成功在所有程序中,找到MySQL→MySQLServer5.6下面的命令行工具,然后单击输入密码后回车,就可以知道MySQL数据库是否链接成功。右击桌面上的“计算机”,在弹出的快......