Cloudflare Workers 免費方案教學 2026:無伺服器部署香港開發者指南
Cloudflare Workers 免費版每日 100,000 次請求,支援 JavaScript/TypeScript,可以部署 API、Webhook、邊緣運算。本文教香港開發者入門 Workers 部署。

Cloudflare Workers 免費版每日 100,000 次請求、10ms CPU 時間限制,適合部署輕量 API、URL 重定向、Webhook Handler,全球邊緣部署延遲極低,香港用家存取速度快。
香港開發者部署後端服務,傳統方法係租 VPS 或用 AWS/GCP,但呢啲方案要管理伺服器、又有起步費用。Cloudflare Workers 係無伺服器(Serverless)方案,代碼跑喺 Cloudflare 全球 300+ 個節點,免費版已足夠大部分個人項目,而且部署只需一條指令。
Workers 係咩?同傳統伺服器有咩分別?
Cloudflare Workers 係一個「邊緣運算」(Edge Computing)平台。你寫 JavaScript 或 TypeScript 函數,Cloudflare 把它部署到全球 300+ 個數據中心,每次有請求進來,最近嘅節點會即時執行你嘅代碼。
同傳統伺服器嘅分別:
| 比較項目 | 傳統 VPS | Cloudflare Workers |
|---|---|---|
| 收費模式 | 月費固定($5+/月) | 按請求數計,免費版每日 10 萬次 |
| 延遲 | 視乎伺服器地點 | 全球邊緣,延遲通常 <50ms |
| 維護 | 要自己管伺服器、更新、安全 | 完全托管,零維護 |
| 冷啟動 | 無(長期運行) | Workers 無冷啟動問題(比 Lambda 快) |
| 限制 | 相對靈活 | 每次請求 CPU 時間有限制 |
Workers 最適合嘅場景:輕量 API 端點、URL 重定向、請求過濾、Webhook 接收、靜態資產緩存邏輯。唔適合需要長時間計算或大量 CPU 嘅任務。
免費版限制同付費版比較
清楚了解限制先,唔好做到一半先發現超出限額。
免費版(Free):
- 每日 100,000 次請求
- 每次請求最多 10ms CPU 時間(牆鐘時間 30 秒)
- 128MB 記憶體
- Workers KV:每日 100,000 次讀取、1,000 次寫入、1GB 存儲
- Workers 數量:上限 100 個
- 子域名格式:
你的名字.workers.dev(免費)
付費版($5/月起,Workers Paid):
- 每月 1,000 萬次請求免費,之後 $0.50/百萬次
- CPU 時間提升至 30ms(Unbound 方案更可延長至 15 分鐘)
- 支援 Cron Triggers(定時任務)
- Workers KV 寫入上限大幅提升
- 自訂域名綁定(唔需要額外費用)
對香港小型開發者嚟講,免費版通常足夠:每日 10 萬次請求係幾個小型 API 嘅總和,對個人項目已相當充裕。
第一個 Worker 部署步驟(Hello World API)
準備工作:
- 建立 Cloudflare 帳號(cloudflare.com,免費)
- 安裝 Node.js(建議 18+)
- 安裝 Wrangler CLI(Cloudflare 嘅 Workers 工具):
npm install -g wrangler
步驟一:登入 Cloudflare
wrangler login
瀏覽器會打開授權頁面,點允許後返回 Terminal。
步驟二:建立新 Worker 項目
wrangler init my-first-worker
cd my-first-worker
選擇模板時,選「Hello World」Worker。
步驟三:查看默認代碼
打開 src/index.js,你會見到類似以下代碼:
export default {
async fetch(request, env, ctx) {
return new Response('Hello World!', {
headers: { 'Content-Type': 'text/plain' },
});
},
};
呢段代碼嘅意思:每次有 HTTP 請求進來,返回「Hello World!」。
步驟四:本地測試
wrangler dev
在本地啟動開發伺服器,打開 http://localhost:8787 就可以測試。
步驟五:部署到 Cloudflare
wrangler deploy
部署完成後,你會得到一個 URL,格式係 https://my-first-worker.你的用戶名.workers.dev,全球即時可存取。整個過程唔需要管理任何伺服器。
實用案例(Webhook、URL Shortener、API Proxy)
案例一:Telegram Webhook Handler 接收 Telegram Bot 嘅 Webhook 通知,Workers 非常適合:
export default {
async fetch(request) {
if (request.method !== 'POST') {
return new Response('Method not allowed', { status: 405 });
}
const body = await request.json();
const message = body?.message?.text || '';
// 處理訊息邏輯
console.log('收到訊息:', message);
return new Response('OK');
}
};
案例二:URL Shortener(配合 KV 存儲)
export default {
async fetch(request, env) {
const url = new URL(request.url);
const slug = url.pathname.slice(1); // 去掉開頭 /
const target = await env.LINKS.get(slug); // 從 KV 讀取目標 URL
if (target) {
return Response.redirect(target, 301);
}
return new Response('Link not found', { status: 404 });
}
};
案例三:API Proxy(加入 CORS Headers) 某些 API 唔支援 CORS,可以用 Workers 做代理:
export default {
async fetch(request) {
const targetUrl = 'https://api.example.com' + new URL(request.url).pathname;
const response = await fetch(targetUrl, request);
const newHeaders = new Headers(response.headers);
newHeaders.set('Access-Control-Allow-Origin', '*');
return new Response(response.body, {
status: response.status,
headers: newHeaders,
});
}
};
Workers KV 同 D1 Database 簡介
單靠 Workers 函數本身無法儲存數據,需要配合儲存服務:
Workers KV(Key-Value 存儲)
- 類似 Redis 嘅鍵值對存儲
- 適合:Session 數據、配置、短連結映射
- 免費版:每日 10 萬次讀取,1,000 次寫入
- 特點:全球複製,讀取極快;但寫入後最終一致性,唔適合需要即時一致嘅場景
D1 Database(SQLite)
- Cloudflare 提供嘅 SQLite 數據庫,直接喺 Worker 裏用 SQL 查詢
- 適合:用戶數據、內容管理、簡單應用後端
- 免費版:每日 500 萬行讀取,10 萬行寫入,5GB 存儲
- 用法:在
wrangler.toml綁定 D1 後,用env.DB.prepare()執行 SQL
兩個存儲服務免費額度對個人項目都相當足夠,加埋 Workers 免費運算,基本上可以零成本建立完整嘅輕量後端。
常見問題 FAQ
Q1:Workers 可以用 Node.js 套件嗎?
部分可以。Workers 運行環境唔係 Node.js,而係 V8 引擎(同 Chrome 一樣),但 Cloudflare 提供 Node.js 兼容層(nodejs_compat flag),常用套件如 zod、hono 均可用。但依賴 Node.js 原生模組(如 fs、child_process)嘅套件唔支援。
Q2:Workers 同 Cloudflare Pages Functions 有咩分別? Pages Functions 係 Workers 嘅簡化版,專為靜態網站添加後端功能,適合配合 Pages 部署嘅項目。Workers 係獨立服務,更靈活,適合純 API 或複雜後端邏輯。功能上 Pages Functions 最終都係跑喺 Workers 基礎架構。
Q3:免費版 10ms CPU 時間夠用嗎? 對輕量請求足夠。10ms CPU 時間可以執行幾千行 JavaScript,做數據庫查詢、JSON 處理、URL 重定向等完全夠。但如果係複雜計算(影像處理、PDF 生成),需要升付費版或另選方案。
Q4:Workers 可以綁定自訂域名嗎? 可以,但需要把域名加入 Cloudflare(改 nameserver)。加入後,喺 Workers → Triggers → Custom Domains 裏添加域名即可。免費帳號支援此功能,唔需要付費。
Q5:Workers 有冇 Hong Kong 節點? 有。Cloudflare 喺香港有多個節點,本地用家存取 Workers 延遲通常係個位數毫秒(<10ms),遠比部署喺其他地區嘅 AWS/GCP 快。