Skip to content

Workers 函数

本项目使用 functions/api/demo.ts 作为 Workers 入口。

代码结构

ts
if (url.pathname === '/api/greeting' && request.method === 'GET') {
  return jsonResponse({
    message: 'konichiha,konosubarashiisekai'
  });
}

这个接口返回固定问候语。

ts
if (url.pathname === '/api/calculate' && request.method === 'GET') {
  const a = readNumberParam(url, 'a');
  const b = readNumberParam(url, 'b');

  return jsonResponse({
    a,
    b,
    result: calculate(a, b),
    formula: '(a+b)*a*b'
  });
}

这个接口读取两个参数 ab,返回:

text
(a+b)*a*b

请求示例

问候函数:

bash
curl https://cloudflare-learning-lab-worker.你的子域名.workers.dev/api/greeting

计算函数:

bash
curl "https://cloudflare-learning-lab-worker.你的子域名.workers.dev/api/calculate?a=2&b=3"

PagesFunction 类型

Env 类型来自 Cloudflare 的 Workers 类型定义。它告诉 TypeScript 当前 Worker 可以使用哪些环境变量或绑定。

常见响应方式

ts
return Response.json({ ok: true });

返回 JSON。

ts
return new Response('hello', { status: 200 });

返回普通文本。

ts
return new Response('Not Found', { status: 404 });

返回 404。

下一步

Workers 最常见的工作不是只返回字符串,而是:

  • 读取请求参数
  • 调用其他服务
  • 绑定 R2
  • 设置 CORS
  • 返回结构化 JSON

Cloudflare Learning Lab