shawenguan 1 年之前
父節點
當前提交
0d7a071dff
共有 2 個文件被更改,包括 57 次插入3 次删除
  1. 14 0
      BoxJsSub/hbcpre.json
  2. 43 3
      Scripts/hbcpre/hbcpreHelper.js

+ 14 - 0
BoxJsSub/hbcpre.json

@@ -29,6 +29,13 @@
             ],
             "settings": [
                 {
+                    "id": "HbcpreDecryptionEnabled",
+                    "name": "开启/关闭采取解密",
+                    "val": true,
+                    "type": "boolean",
+                    "desc": "默认开启"
+                },
+                {
                     "id": "HbcpreUserToken",
                     "name": "用户Token",
                     "val": "",
@@ -52,6 +59,13 @@
                     "autoGrow": true,
                     "placeholder": "",
                     "desc": "产品列表"
+                },
+                {
+                    "id": "HbcpreItemCntRwData",
+                    "name": "拥有的产品数量自定义",
+                    "val": "",
+                    "type": "text",
+                    "desc": "拥有的产品数量自定义,格式:id#num|id#num"
                 }
             ]
         },

+ 43 - 3
Scripts/hbcpre/hbcpreHelper.js

@@ -17,6 +17,7 @@ const scriptName = `华文数交助手`;
 const magicJS = MagicJS(scriptName, "INFO");
 
 const HbcpreConstKey = {
+    decryptionEnabled: 'HbcpreDecryptionEnabled',
     token: 'HbcpreUserToken',
     userInfo: 'HbcpreUserInfo',
     collectionClassList: 'HbcpreCollectionClassList',
@@ -26,6 +27,8 @@ const HbcpreConstKey = {
     collectionName: 'HbcpreCollectionName',
     orderLimitPrice: 'HbcpreOrderLimitPrice',
     floatPriceIntaval: 'HbcpreFloatPriceIntaval',
+    itemCntRwData: 'HbcpreItemCntRwData',
+    walletPayPassword: 'HbcpreWalletPayPassword',
 };
 
 const gUserAgent = `Mozilla/5.0 (iPhone; CPU iPhone OS 16_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1`;
@@ -48,6 +51,9 @@ const gCommonHeaders = {
     'Accept-Language' : `zh-CN,zh-Hans;q=0.9`
 };
 
+
+let gItemCntRwDict = {};
+
 let gRetBody;
 async function Main() {
     if (magicJS.isStrictRequest) {
@@ -66,13 +72,43 @@ async function Main() {
     }
 }
 
+function isDecryptionEnabled(){
+    let flag = magicJS.data.read(HbcpreConstKey.decryptionEnabled, null);
+    if(!flag){
+        return true;
+    }
+    return JSON.parse(flag);
+}
+
+function readItemCntRwDict(){
+    gItemCntRwDict = {};
+    let text = magicJS.data.read(HbcpreConstKey.itemCntRwData, null);
+    if(text){
+        let segments = text.split('|');
+        for (let i = segments.length - 1; i >= 0; i--) {
+            let kvArr = segments[i].trim().split('#');
+            if(kvArr.length == 2){
+                const key = kvArr[0].trim();
+                const value = parseInt(kvArr[1].trim());
+                gItemCntRwDict[key] = value;
+            }
+        }
+    }
+}
+
 function checkHandleRequest() {
     handleHeaders();
     const request = magicJS.request;
     const url = request.url;
     const path = request.path;
     magicJS.log(`请求url=${url}#${request.method}`);
-    magicJS.log(`请求body=${magicJS.getRequestBody()}`);
+    let reqBody = magicJS.getRequestBody();
+    if(isDecryptionEnabled()){
+        reqBody = getRequestPlainData();
+        magicJS.log(`请求body=${JSON.stringify(reqBody)}`);
+    } else {
+        magicJS.log(`请求body=${reqBody}`);
+    }
     printResponseData();
     if ($request && $request.method != 'OPTIONS') {
         switch (path) {
@@ -133,8 +169,12 @@ function printResponseData() {
     if (!data) {
         return;
     }
-    data = getResponsePlainData();
-    magicJS.log(`jsonStr=${JSON.stringify(data)}`);
+    if(isDecryptionEnabled()){
+        data = getResponsePlainData();
+        magicJS.log(`jsonStr=${JSON.stringify(data)}`);
+    } else {
+        magicJS.log(`jsonStr=${JSON.stringify(data)}`);
+    }
 }
 
 function getResponsePlainData() {