UNPKG

@cap.js/middleware-elysia

Version:

Elysia Cloudflare-like middleware for Cap, a lightweight, modern open-source CAPTCHA alternative designed using SHA-256 PoW.

201 lines (185 loc) 6.36 kB
<!DOCTYPE html> <html> <head> <title>Verifying you are a human…</title> <meta name="title" content="Verifying you are a human…" /> <meta name="description" content="A preview of this link is unavailable while a browser check is in progress." /> <meta property="og:type" content="website" /> <meta property="og:title" content="Verifying you are a human…" /> <meta property="og:description" content="A preview of this link is unavailable while a browser check is in progress." /> <meta property="twitter:title" content="Verifying you are a human…" /> <meta property="twitter:description" content="A preview of this link is unavailable while a browser check is in progress." /> <style> * { box-sizing: border-box; } body { max-width: 690px; margin: 3em auto; padding: 18px; font-family: system-ui; } h1 { font-weight: 600; font-size: 26px; margin-bottom: 0px; } h2 { font-weight: 400; font-size: 20px; margin-top: 7px; margin-bottom: 1.5em; color: #171717; } cap-widget { margin-bottom: 4em; } hr { border: 0; border-top: 1px solid #dddddd8f; margin: 2em 0; } h3 { font-weight: 600; font-size: 18px; margin-top: 1.5em; margin-bottom: 0px; } p { font-weight: 400; font-size: 16px; line-height: 1.5; margin-top: 10px; color: #171717; } footer { display: flex; gap: 8px; align-items: center; } footer .credit { display: flex; gap: 8px; align-items: center; text-decoration: none; color: #171717; } footer .credit:hover { opacity: 0.7; } footer .credit img { width: 26px; height: 26px; } footer .date { font-size: 15px; color: #888; margin: 0px; margin-left: auto; } </style> </head> <body> <h1>Checking your browser...</h1> <script> document.querySelector("h1").innerText = location.host; </script> <h2>Verifying you are a human before proceeding...</h2> <cap-widget id="cap" data-cap-api-endpoint="/__cap_clearance/"></cap-widget> <noscript> <style> .info { display: none; } a { color: #0a91e7; } h3 { line-height: 1.3; margin-bottom: 1em; } </style> <h3> JavaScript is disabled and we were unable to verify you. To access this page, please <a href="https://www.whatismybrowser.com/guides/how-to-enable-javascript/auto" target="_blank" rel="nofollow noopener" > enable JavaScript </a> </h3> <hr /> </noscript> <div class="info"> <hr /> <h3>Why am I seeing this page?</h3> <p> To keep our site secure, we need to confirm you're a human and not a robot. This quick check helps stop spam and abuse. </p> <h3>What should I do?</h3> <p> No action is required on your end. Once verified, you'll continue to your destination. If you're stuck, try refreshing the page or checking your connection. </p> <hr /> </div> <footer> <a href="https://capjs.js.org/" target="_blank" rel="noopener" class="credit" > <img src="data:image/webp;base64,UklGRnwEAABXRUJQVlA4WAoAAAAQAAAATwAATwAAQUxQSDcCAAABkAXZtmk7+73Ytm3btm3btm3btvNn206ebfsdzvCcvfe6f6lURcQEsH/Ui3Sb2quAA0k7zU2D9qFb9rwF8ufOms6Z3hgVv0d+dHF3+/b6ztn1oxsXSkUoa+svsB/vfnFS5dQ0Ss99FgfOIRd7ZpWv7DpviFQe9s8oV87ZnhCtXK8jU9P7JiQMGJ9GlrTTQiCnsj2rHNm2q5D2cDYZchyHzAcyist0BFIbK1OISrnGlAvx/UUNToTsLuXElHOF/MfSiEh1CAQTuotoGUMBD7PzS30OJPUR/OpG0sCzHNzWgqg+hFeON1RwJxOnxnFkkjpymga6p1NycT5BKLgql2zPCGEpl1JelN7m4tEggpLSjUfnBEo47sxhkEIqem/XAk52RmukAOX7gR75rY3TiQFQv+1qn9PCFIMegKQ3q+ql/9M00yEAiLoxprBjAcxvs7I6FsC8VJhNNki5HP9sWgLOZR6rE3JfVNyp4Jh7CZaShw5XyYRsLM1+z9z2SIAFnOmbbC86VoqEU7Wd2F9TlJ/zJP4vR9rH2wi7Obtus4MBwoxH3dMw61la7ficBMCvdd1wC7rftSnV0jPGnCsufqcKcZmSg3HM22bBtlUNnIq7/ynqzZ7+pdOwv+fucyGEm//akkxkxntAxOvDY2plZ3ZTV5n7MJaH75bKTPDMgLXVszkxvpkbLb4TqFmKvD+rnBMTnaGMMxOZvly3hcfuvnPxcHl7Y8+YmpmYQ3RKlz1foXzZ0rD/AwMAVlA4IB4CAABwDwCdASpQAFAAPok6lUelI6IhL1auwKARCWgAyJAhz7eq/ihjJ3OI5P5V3p3mJ/ar10vRB/298A5832YAmiLa0mutah4B6eOgBjpWeAPuDnTJNdrbbJGDv05E/kTVtFErBAMEp9Sdw2xY7Adta5Ru6IDt1ffejnz6tUPNbgJLZIFBZHAA/vz4VF/Qshf/4bK2z23dL/pV2OnhttId5Jomv/wz7rSmfFojRqvMm0mkOsKUbevn1KAeivy2swXV7qG8yi6ZCW/0Be54wB4Y5ZvU3j/AJTo2YSp/T5twW6LjpC9FfJJ99yn0GjUbICt2Rs1Fh+k7CQ5ze4+AHDqQ+1vxZ+itKOvFDB6CfDAqpTpqtdPaJlqFvq1bwvulRC44jnvPvhuyS04lhAJYP2iOQEh5lydE+sXpBfX+N3RCMY4KNY/8ubEOok/6+so2trq8Tc67BTprcrZ5sy0gYjn7XL5Jceobj+a8X+qaXc31i61vBeUpVO1eHth1iA9BXz3QBrRY0ahjBc3Fl9J8ouV6/svohQze+Xv4r47H18ryTUSTVDWnw6TuHgfYgtZQM98u1OqzLlB3Jz9AjlflcsnuakRtmeMGkkxiVuoPb3S36krL+oTNPGlyL6TcUTgeLl0ZZPRGdlmCbnR9JcEnKOqK7KwVYegLD5vlXrZwACMgve4dHJ8OEkf9ppwm6OGGGwG/1uHEJeN1zIOxgTCxqAAAAA==" aria-hidden="true" title="Cap logo" alt="Cap logo" /> <span>Cap</span> </a> <p class="date">{{TIME}}</p> </footer> <script src="https://cdn.jsdelivr.net/npm/@cap.js/widget@0.1.17"></script> <script> window.CAP_CUSTOM_FETCH = function (url, options) { console.log(url); if (url.endsWith("/challenge")) { return { json: () => { return window.CAP_CHALLENGE; }, }; } return fetch(url, options); }; const widget = document.querySelector("cap-widget"); widget.addEventListener("solve", (event) => { document.querySelector("h2").innerText = "Continuing to your destination..."; document.cookie = `__cap_clearance=${ event.detail.token }; path=/; max-age=${ window.TOKEN_VALIDITY_HOURS * 3_600 }; SameSite=Strict`; setTimeout(() => { location.reload(); }, 300); }); widget.solve(); </script> </body> </html>