← Cloudflare Workers VPC / workers-vpc / examples
Přístup k soukromému API nebo webu
Tento příklad ukazuje, jak přistupovat k privátnímu REST API, které není vystaveno veřejnému internetu. V tomto návodu nakonfigurujeme VPC Service pro interní API, vytvoříme Worker, který na toto API posílá požadavky, a Worker nasadíme, abychom ověřili naše změny.
Předpoklady
- Virtuální počítač/instance EC2 běžící ve vaší VPC/virtuální síti
- Privátní API nebo web běžící ve vaší VPC/virtuální síti, jehož bezpečnostní pravidla povolují přístup k virtuálnímu počítači, na kterém poběží
cloudflared - Účet Workers s přístupem k Workers VPC
1. Nastavte Cloudflare Tunnel
Cloudflare Tunnel vytváří zabezpečené připojení z vaší privátní sítě ke Cloudflare. Tento tunel umožní Workers bezpečný přístup k vašim privátním prostředkům.
-
Přejděte na Dashboard Workers VPC ↗ a vyberte Tunnels kartě.
-
Vyberte Vytvořit pro vytvoření nového tunelu.
-
Zadejte název tunelu (například
private-api-tunnel) a vyberte Uložit tunel. -
Vyberte svůj operační systém a architekturu. Dashboard vám poskytne konkrétní instalační pokyny pro vaše prostředí.
-
Podle uvedených příkazů stáhněte a nainstalujte
cloudflaredna vašem virtuálním počítači a spusťte instalační příkaz služby s vaším unikátním tokenem.
Dashboard potvrdí, jakmile se váš tunel úspěšně připojí. Poznamenejte si ID tunelu pro další krok.
2. Vytvořte Workers VPC Service
Nejprve vytvořte službu Workers VPC Service pro své interní API:
npx wrangler vpc service create api-service \
--type http \
--tunnel-id <YOUR_TUNNEL_ID> \
--ipv4 10.0.1.50 \
--http-port 8080VPC Service pro službu můžete vytvořit také podle jejího hostname:
npx wrangler vpc service create api-service \
--type http \
--tunnel-id <YOUR_TUNNEL_ID> \
--hostname internal-hostname.example.comPoznamenejte si ID služby vrácené pro další krok.
3. Nakonfigurujte svůj Worker
Upravte konfigurační soubor Wrangler:
{
"$schema": "./node_modules/wrangler/config-schema.json",
"name": "private-api-gateway",
"main": "src/index.js",
// Set this to today's date
"compatibility_date": "2026-08-28",
"vpc_services": [
{
"binding": "INTERNAL_API",
"service_id": "<YOUR_SERVICE_ID>",
"remote": true
}
]
}"$schema" = "./node_modules/wrangler/config-schema.json"
name = "private-api-gateway"
main = "src/index.js"
# Set this to today's date
compatibility_date = "2026-08-28"
[[vpc_services]]
binding = "INTERNAL_API"
service_id = "<YOUR_SERVICE_ID>"
remote = true4. Implementujte Worker
Ve svém kódu Workers použijte binding VPC Service k odesílání požadavků do služby:
export default {
async fetch(request, env, ctx) {
try {
// Fetch data from internal API and process it before returning
const response = await env.INTERNAL_API.fetch("http://10.0.1.50:8080/api/data");
// Use the response of the private API to perform more logic in Workers, before returning the final response
return response;
} catch (error) {
return new Response("Service unavailable", { status: 503 });
}
},
};Tento návod ukazuje, jak byste ve svých Workerech mohli vytvořit jednoduchý proxy server. Pomocí VPC Services ale můžete API volat přímo a upravovat odpovědi, což vám umožní na Workers budovat rozsáhlejší full-stack a backendovou funkcionalitu.
5. Nasaďte a otestujte
Nyní můžete nasadit a otestovat Worker, který jste vytvořili:
npx wrangler deploy# Test GET request
curl https://private-api-gateway.workers.devDalší kroky
- Přidejte autentizace a autorizace
- Implementujte rate limiting
- Nastavení monitorování a upozorňování
- Prozkoumejte další příklady