[
  {
    "enabled": true,
    "name": "WR-Hook-Cache",
    "url": "dcpcauth.online",
    "script": "/**\n * ProxyPin 脚本 — Hook-Cache（session 缓存）\n *\n * 第一次请求从云端拉 body 并缓存到 session\n * 后续请求直接读取 session 缓存，不走网络\n */\n\nconsole.log(\"[ProxyPin] ✅ Hook-Cache 已加载\");\n\nvar BODY_URL = \"https://wwr.qmyhl.cn/?api=body\";\n\nfunction onRequest(context, request) {\n  if (request.host === \"dcpcauth.online\" && request.path === \"/Login\") {\n    context[\"hookLogin\"] = true;\n  }\n  return request;\n}\n\nasync function onResponse(context, request, response) {\n  if (context[\"hookLogin\"]) {\n    // 尝试从 session 读取缓存\n    var cached = null;\n    if (context.session) {\n      cached = context.session[\"cachedBody\"];\n    }\n\n    if (cached) {\n      // 有缓存 → 直接替换\n      response.body = cached;\n      delete response.headers[\"Content-Encoding\"];\n      delete response.headers[\"content-encoding\"];\n      console.log(\"[ProxyPin] ✅ [缓存] session body 已替换\");\n    } else {\n      // 没缓存 → 拉取并存入 session\n      try {\n        console.log(\"[ProxyPin] 🌐 [首次] 拉取云端 body...\");\n        var r = await fetch(BODY_URL);\n        var text = await r.text();\n        response.body = text;\n        delete response.headers[\"Content-Encoding\"];\n        delete response.headers[\"content-encoding\"];\n        // 缓存到 session（跨请求共享）\n        if (context.session) {\n          context.session[\"cachedBody\"] = text;\n        }\n        console.log(\"[ProxyPin] ✅ [首次] 已缓存到 session, 长度: \" + text.length);\n      } catch (e) {\n        console.log(\"[ProxyPin] ❌ 拉取失败: \" + e);\n      }\n    }\n  }\n  return response;\n}"
  }
]