提交 556512b1 编写于 作者: H hjdhnx

js模式1增加预处理属性

上级 50b1ccea
无法预览此类型文件
3.9.17beta2
\ No newline at end of file
3.9.18
\ No newline at end of file
......@@ -32,8 +32,28 @@ function init_test(){
console.log("init_test_end");
}
/**
* 执行预处理代码
*/
function pre(){
if(typeof(rule.预处理) === 'string' && rule.预处理 && rule.预处理.trim()){
let code = rule.预处理.trim();
console.log("执行预处理代码:"+code);
if(code.startsWith('js:')){
code = code.replace('js:','');
}
try {
// code里可以进行get 或者 post请求cookie并改变rule.headers 里的cookie
// 直接操作 rule_fetch_params 这个变量 .headers.Cookie
eval(code);
}catch (e) {
console.log('预处理执行失败:'+e.message);
}
}
}
let rule = {};
const VERSION = '3.9.16';
const VERSION = '3.9.18';
/** 已知问题记录
* 1.影魔的jinjia2引擎不支持 {{fl}}对象直接渲染 (有能力解决的话尽量解决下,支持对象直接渲染字符串转义,如果加了|safe就不转义)[影魔牛逼,最新的文件发现这问题已经解决了]
* Array.prototype.append = Array.prototype.push; 这种js执行后有毛病,for in 循环列表会把属性给打印出来 (这个大毛病需要重点排除一下)
......@@ -1958,6 +1978,7 @@ function playParse(playObj){
rule_fetch_params = {'headers': rule.headers||false, 'timeout': rule.timeout, 'encoding': rule.encoding};
oheaders = rule.headers||{};
RKEY = typeof(key)!=='undefined'&&key?key:'drpy_' + (rule.title || rule.host);
pre(); // 预处理
init_test();
}catch (e) {
console.log('init_test发生错误:'+e.message);
......
此差异已折叠。
......@@ -47,6 +47,9 @@
[dockerfile教程](https://blog.csdn.net/qq_46158060/article/details/125718218)
[获取本地设备信息](https://blog.csdn.net/cui_yonghua/article/details/125508991)
[获取本地设备信息](https://m.jb51.net/article/140716.htm)
###### 2022/10/27
- [X] v3.9.18 js1 增加 预处理:, 可以在预处理里写js代码实现操作rule变量和 rule_fetch_params 变量
比如 rule_fetch_params.headers.Cookie = 'xxxx'; 当然这个cookie是通过js代码获取到的
###### 2022/10/25
- [X] v3.9.17beta1 增加海盗听书源
###### 2022/10/24
......@@ -404,6 +407,9 @@ var rule = {
// 对图片加了referer验证的有效,海阔专用,普通规则请勿填写此键值
图片来源:'@Referer=http://www.jianpianapp.com@User-Agent=jianpian-version350',
// js写法,仅js模式1有效.可以用于代码动态获取全局cookie之类的
// 可操作变量有 rule_fetch_params,rule,以及基础的网页访问request,post等操作
预处理:'rule_fetch_params.headers.Cookie = "xxxx";',
// 类似海阔一级 列表;标题;图片;描述;链接;详情 其中最后一个参数选填
// 如果是双层定位的话,推荐的第2段分号代码也是第2层定位列表代码
推荐:'.col-sm-6;h3&&Text;img&&data-src;.date&&Text;a&&href',
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册