mirror of
https://github.com/ylw00/qxVm.git
synced 2025-04-12 04:03:28 +08:00
78 lines
2.4 KiB
JavaScript
78 lines
2.4 KiB
JavaScript
let SANBOX = require('./z_sanbox/qxVm.sanbox');
|
|
|
|
|
|
function QXVm_help(){
|
|
console.log(`
|
|
:params js_code 用户自己的代码(可以是一个文件得绝对路径)
|
|
:params func_name 需要导出的方法
|
|
:params user_config 个性浏览器环境
|
|
user_config:{
|
|
isTest: Boolean // 如果测试则固定随机数种子, 时间戳
|
|
compress: Boolean, // 是否压缩js, 针对 ob,sojson 检测格式化
|
|
runConfig: Object { // 运行中的配置
|
|
proxy: false, // 是否代理(默认false)
|
|
logOpen: true // 是否日志打印(调试模式)
|
|
}
|
|
canvas: String, // 自定义canvas指纹
|
|
window_attribute: Object, // 自定义window属性(暴露window出来, 设置非浏览器环境对象/参数)
|
|
plugin: Array, // 自定义浏览器插件
|
|
env: Object { // 自定义浏览器环境
|
|
navigator: Object, // 针对 加密UA和请求UA必须一致的情况
|
|
location: Object, // 自定义属性
|
|
document: Object // 自定义属性
|
|
}
|
|
}
|
|
:exports: {
|
|
printLog: function,
|
|
{{func_name}}: {{func_name}},
|
|
}
|
|
`)
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
* 注册 express APP
|
|
* @returns express
|
|
*/
|
|
function QXVM_registerServer() {
|
|
let APP = express();
|
|
APP.use(express.json({ limit: '50mb' }));
|
|
APP.use(express.urlencoded({ limit: '50mb', extended: true }));
|
|
APP.use(bodyParser.json({ limit: '10mb', extended: true }));
|
|
return APP;
|
|
}
|
|
|
|
|
|
/**
|
|
* 注册server回调,是否开始server,取决与port是否不为空
|
|
* @param {String} method get|post
|
|
* @param {String} route 路由
|
|
* @param {Number} port 端口, 如果端口为空, 则不开启服务
|
|
* @param {Function} callback 回调
|
|
*/
|
|
function QXVM_registerCallback(method, route, port, callback) {
|
|
let APP = QXVM_registerCallback.APP || (() => {
|
|
QXVM_registerCallback.APP = QXVM_registerServer();
|
|
return QXVM_registerCallback.APP;
|
|
})()
|
|
|
|
method = method.toLowerCase();
|
|
APP[method](route, callback);
|
|
if (port !== undefined && TOOLS.isNumber(port)) {
|
|
APP.listen(port, () => {
|
|
console.log(`框架服务开启 ${port} 端口`);
|
|
});
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
module.exports = {
|
|
sanbox: SANBOX.QXVm_sanbox,
|
|
help: QXVm_help,
|
|
registerServer: QXVM_registerServer,
|
|
registerCallback: QXVM_registerCallback,
|
|
};
|