← Cloudflare for Platforms / cloudflare-for-platforms / workers-for-platforms / configuration
Bindings
Když nasazujete User Workery prostřednictvím Workers for Platforms, můžete připojit vazby k tomu, abyste jim poskytli přístup k prostředkům, jako je KV namespaces, Databáze D1, R2 buckety, a další. To umožňuje vašim koncovým zákazníkům vytvářet výkonnější aplikace, aniž byste museli sami budovat infrastrukturní komponenty.
Pomocí bindings může každý User Worker rozšířit funkčnost o:
- Ukládejte data hodnotou KV, R2, D1, nebo Durable Objects
- Zpracovávejte úlohy asynchronně hodnotou Queues a Workflows
- Spouštějte kontejnery hodnotou Containers (navázáno jako Durable Object)
- Připojte se k privátním sítím hodnotou VPC služby, VPC sítě, a Hyperdrive
- Shromažďujte metriky hodnotou Analytics Engine
Izolace zdrojů
Každý User Worker má přístup pouze k bindingům, které jsou k němu explicitně přiřazeny. Pro úplnou izolaci můžete každému User Workeru vytvořit a přiřadit jedinečný prostředek, jako je databáze D1 nebo KV namespace.
Přidání KV Namespace do uživatelského Workeru
Tento příklad krok za krokem ukazuje, jak vytvořit KV namespace a připojte ho k User Workeru. Stejný postup lze použít i pro připojení k dalším vazby.
1. Vytvořte KV namespace
Vytvořte KV namespace pomocí Cloudflare API.
2. Připojte KV namespace k User Workeru
Použijte API pro nahrání User Workeru k připojení vazby KV namespace k Workeru. Můžete to udělat už při prvním nahrávání skriptu Workeru, nebo později při aktualizaci existujícího Workeru.
Příklad požadavku API
curl -X PUT \
"https://api.cloudflare.com/client/v4/accounts/<account-id>/workers/dispatch/namespaces/<your-namespace>/scripts/<script-name>" \
-H "Content-Type: multipart/form-data" \
-H "Authorization: Bearer <api-token>" \
-F 'metadata={
"main_module": "worker.js",
"bindings": [
{
"type": "kv_namespace",
"name": "USER_KV",
"namespace_id": "<your-namespace-id>"
}
]
}' \
-F 'worker.js=@/path/to/worker.js'Nyní má User Worker přístup k USER_KV binding prostřednictvím env argument pomocí env.USER_KV.get(), env.USER_KV.put(), a další metody KV.
Poznámka: Pokud plánujete do Workeru přidat nové bindingy, použijte keep_bindings parametr, aby se zachovaly stávající bindingy a zároveň přidaly nové.
curl -X PUT \
"https://api.cloudflare.com/client/v4/accounts/<account-id>/workers/dispatch/namespaces/<your-namespace>/scripts/<script-name>" \
-H "Content-Type: multipart/form-data" \
-H "Authorization: Bearer <api-token>" \
-F 'metadata={
"bindings": [
{
"type": "r2_bucket",
"name": "STORAGE",
"bucket_name": "<your-bucket-name>"
}
],
"keep_bindings": ["kv_namespace"]
}'