init
This commit is contained in:
51
Discard/corehalo_capture.js
Normal file
51
Discard/corehalo_capture.js
Normal file
@@ -0,0 +1,51 @@
|
||||
// corehalo_capture.js
|
||||
//
|
||||
// 触发:请求 URL 匹配 h5.m.goofish.com/...reminderUrl=...
|
||||
// 逻辑:
|
||||
// 1. 从 $request.url 提取 reminderUrl= 后的编码串
|
||||
// 2. decodeURIComponent -> 真正目标链接 realLink
|
||||
// 3. 保存到 persistentStore("corehalo_links")
|
||||
// 4. 发通知,提示捕获到了什么
|
||||
|
||||
let reqUrl = $request && $request.url ? $request.url : "";
|
||||
|
||||
// 提取 reminderUrl= 后面的编码内容
|
||||
let m = reqUrl.match(/reminderUrl=([^&]+)/);
|
||||
|
||||
if (m && m[1]) {
|
||||
// decode 出真实外链
|
||||
let realLink = decodeURIComponent(m[1]);
|
||||
|
||||
// 从持久化存储读现有列表
|
||||
let raw = $persistentStore.read("corehalo_links") || "[]";
|
||||
let list;
|
||||
try {
|
||||
list = JSON.parse(raw);
|
||||
if (!Array.isArray(list)) {
|
||||
list = [];
|
||||
}
|
||||
} catch (e) {
|
||||
list = [];
|
||||
}
|
||||
|
||||
// 去重后推入
|
||||
let added = false;
|
||||
if (!list.includes(realLink)) {
|
||||
list.push(realLink);
|
||||
$persistentStore.write(JSON.stringify(list), "corehalo_links");
|
||||
added = true;
|
||||
}
|
||||
|
||||
// 给你发一条通知,告诉你本次抓到的情况
|
||||
// 标题:CoreHalo Capture
|
||||
// 副标题:Added / Duplicate
|
||||
// 正文:具体链接
|
||||
$notification.post(
|
||||
"CoreHalo Capture",
|
||||
added ? "Added to list" : "Already in list",
|
||||
realLink
|
||||
);
|
||||
}
|
||||
|
||||
// 放行原始请求
|
||||
$done({});
|
||||
Reference in New Issue
Block a user