Skip to Content
DocumentationEdge ComputeCloudflare Workers

Cloudflare Workers

Het onderscheppen van verkeer aan de edge is de meest efficiënte manier om ProxyTracer te gebruiken. Door deze middleware in een Cloudflare Worker te implementeren, worden kwaadaardige verzoeken al op CDN-niveau geweigerd voordat ze ooit resources van je origin-server verbruiken.

De Implementatie

Dit fragment extraheert het werkelijke client-IP met behulp van de native headers van Cloudflare, raadpleegt de ProxyTracer API en retourneert een strikte 403 Forbidden als er een proxy wordt gedetecteerd.

export default { async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> { // 1. Extraheer het echte IP-adres (Cloudflare biedt dit standaard) const ip = request.headers.get("cf-connecting-ip"); // Doorlaten als er geen IP-adres is gevonden (bijv. lokale ontwikkeling) if (!ip) { return fetch(request); } try { // 2. Raadpleeg de ProxyTracer API const ptResponse = await fetch(`https://api.proxytracer.com/v1/check/${ip}`, { method: "GET", headers: { "Authorization": `Bearer ${env.PROXYTRACER_API_KEY}` } }); if (ptResponse.ok) { const data = await ptResponse.json(); // 3. Verbreek de verbinding als er een proxy/VPN wordt gedetecteerd if (data.proxy === true) { return new Response( JSON.stringify({ error: "Access Denied: VPN or Proxy detected." }), { status: 403, headers: { "Content-Type": "application/json" } } ); } } } catch (error) { // Fail open: Als de API onbereikbaar is, laat verkeer door om uptime te garanderen console.error("ProxyTracer API Error:", error); } // 4. Schoon verkeer gaat door naar je origin-server return fetch(request); } };

Beveiligingsopmerking: Sla je PROXYTRACER_API_KEY altijd op als een versleuteld Secret in je Cloudflare Worker dashboard, nooit in platte tekst.

Laatst bijgewerkt op