Commit cebbef58 authored by antoor's avatar antoor

Add random-encoder features

增加随机编码器功能
parent 9c156004
...@@ -20,12 +20,35 @@ class Base { ...@@ -20,12 +20,35 @@ class Base {
opts['encode'] = opts['encode'] || 'utf8'; opts['encode'] = opts['encode'] || 'utf8';
opts['encoder'] = opts['encoder'] || 'default'; opts['encoder'] = opts['encoder'] || 'default';
this.__opts__ = opts; this.__opts__ = opts;
// 默认编码器
this['__encoder__'] = { this['__encoder__'] = {
/**
* 默认编码器
* @param {String} pwd 连接密码
* @param {Object} data 请求数据
* @return {Object} 生成数据
*/
default(pwd, data) { default(pwd, data) {
data[pwd] = data['_']; data[pwd] = data['_'];
delete data['_']; delete data['_'];
return data; return data;
},
/**
* 随机编码器
* @param {String} pwd 连接密码
* @param {Object} data 请求数据
* @return {Object} 生成数据
*/
random(pwd, data) {
let _encoders = [];
for (let _ in this) {
if (_ === 'random') { continue }
_encoders.push(_);
}
let _index = parseInt(Math.random() * _encoders.length);
return this[
_encoders[_index]
](pwd, data);
} }
} }
} }
......
...@@ -198,7 +198,8 @@ class Form { ...@@ -198,7 +198,8 @@ class Form {
let _ = [ let _ = [
{ type: 'settings', position: 'label-right', offsetLeft: 60, labelWidth: 100 }, { type: 'settings', position: 'label-right', offsetLeft: 60, labelWidth: 100 },
{ type: 'label', label: LANG['list']['add']['form']['encoder'] }, { type: 'label', label: LANG['list']['add']['form']['encoder'] },
{ type: 'radio', name: `encoder_${c}`, value: 'default', label: 'default', checked: true } { type: 'radio', name: `encoder_${c}`, value: 'default', label: 'default', checked: true },
{ type: 'radio', name: `encoder_${c}`, value: 'random', label: 'random' }
]; ];
encoders.map((e) => { encoders.map((e) => {
_.push({ _.push({
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment