export async function onRequest(context) { return handler(context.request, context); } addEventListener("fetch", event => { event.respondWith(handler(event.request, event)); }); var BAD_CODE = {} var CODE = { "GLOBAL_INIT": async () => { }, "INDEX": async (req) => { return new Promise("Hello,world!") }, "EDIT": async (req) => { var AllCode = `export async function onRequest(context) { return handler(context.request, context); }\n\n`; AllCode += `addEventListener("fetch", event => { event.respondWith(handler(event.request, event)); });\n\n` AllCode += `var BAD_CODE = ${JSON.stringify(BAD_CODE)}\n\n` AllCode += "var CODE = {\n" for (let i in CODE) { AllCode += ` "${i}": ${CODE[i].toString()},\n` } AllCode += "}\n\n"; var router = "1234" var code = encodeURIComponent("async()=>{xxxx}") AllCode += `try { let code = decodeURIComponent("${code}"); CODE["${router}"] = eval(code) } catch (e) { BAD_CODE["${router}"] = code }\n\n`.replace(/\n[ ]{8}/g, "\n") AllCode += handler.toString() return new Response(AllCode); }, } try { let code = decodeURIComponent("async()%3D%3E%7Bxxxx%7D"); CODE["1234"] = eval(code) } catch (e) { BAD_CODE["1234"] = code } async function handler(req, ctx) { try { await CODE.GLOBAL_INIT(req, ctx) } catch (e) { } try { return (CODE.EDIT)(req, ctx) } catch (e) { return new Response(e.message) } }