結論: ファイル2つで、APIは公開できる
使うのは Cloudflare Workers です。リクエストが来たら自分の書いたコードが動く仕組みで、置き場所は世界中のCloudflareの拠点。無料プランのまま、1日10万リクエストまで使えます。
レンタルサーバーが「部屋を借りて機械を置く」なら、Workers は「コードを預けると、世界中の窓口が代わりに応対してくれる」仕組みです。
用意するのは2つのファイルだけ
フォルダの中身はこれだけです。npm install も、雛形の生成ツールも使いません。
src フォルダと wrangler.jsonc だけ。wrangler は 4.129.0設定ファイルは3行です。名前・本体のファイルの場所・compatibility_date(互換性の日付)だけを書きます。
{
"name": "cf03",
"main": "src/index.js",
"compatibility_date": "2026-09-08"
}
本体のコードは5行。リクエストが来たら、返事を返す。それだけです。
export default {
async fetch(request) {
return new Response("Hello World!");
},
};
compatibility_date の落とし穴
compatibility_date は、仕様が変わっても、この日の動きのまま動かすための目印です。公式のサンプルはどれも「今日の日付を入れる」と書いてあります。
直し方は簡単で、日付ではなく wrangler のほうを新しくします。最新版なら、同じ設定のまま起動します。
npm install -g wrangler@latest
エラーの文にちゃんと答えが書いてあります。「要求している日付」と「対応している日付」が並んでいたら、道具のほうが古い、と読みます。
手元で動かす(wrangler dev)
wrangler dev と打つと、手元で動きます。インストールもビルドもありません。
npx wrangler dev
Ready on http://127.0.0.1:8787。下にキー操作の案内が出ます
[t] キーで一時的に外へ出す(と、その危なさ)
wrangler dev を動かしたまま [t] を押すと、手元のサーバーが一時的に外から見られるようになります。アカウントの設定も、ルーターのポート開放も要りません。
JSONを返すAPIにする
返すものを、文字からJSONに変えれば、そのままAPIになります。Response.json() を使うだけです。
export default {
async fetch(request) {
const data = { message: "Hello World!", time: new Date().toISOString() };
return Response.json(data);
},
};
wrangler dev。手元でJSONが返ります公開する(wrangler deploy)
公開は1行です。
npx wrangler deploy
アップロードは 0.26 KiB、起動時間は 4ミリ秒。出てきた プロジェクト名.あなたのサブドメイン.workers.dev が、そのまま公開URLです。
SSL証明書もドメインの設定もしていません。workers.dev のURLは、最初から https で使えます。
ログを見る・画面で確認する・片付ける
動かした後に見る場所は3つです。
まずログ。wrangler tail を実行したままブラウザを更新すると、来たリクエストがそのまま流れます。
次にダッシュボード。Workers & Pages の一覧に並び、開くと呼ばれた回数・CPU時間・エラーの数、バージョンの履歴が見られます。
最後に片付け。試したものは wrangler delete で消せます。
まとめ
- Workers は設定ファイルと本体の2つで動く。
npm installは要らない compatibility_dateは作った日を入れる。古い wrangler だと動かないので、道具のほうを新しくするwrangler devで手元で確認。[t] の一時公開はURLを知る人は誰でも入れるので、すぐ閉じる- 公開は
wrangler deployの1行。ログはwrangler tail - 片付けは
wrangler delete。使った分は1日10万リクエストの無料枠の中
よくある質問
Cloudflare Workers は無料で使えますか?
無料プランで 1日10万リクエストまで使えます。1回の実行に使えるCPU時間は10ミリ秒、作れる Worker は100個までです。この記事の内容はすべて無料枠の中で試せます。
npm install は本当に要りませんか?
要りません。外部のライブラリを使わなければ、wrangler.jsonc と src/index.js の2ファイルだけで動きます。雛形を作るツール(C3)もありますが、使わなくても構いません。
compatibility_date には何を書けばいいですか?
作った日を書きます。これは「その日の仕様で動かす」という指定です。古い wrangler は自分が対応している日付までしか受け付けないため、新しい日付を書いたら wrangler も新しくしてください。
[t] キーの一時公開は、そのまま公開に使えますか?
使わないでください。URLを知っている人は誰でも、あなたのパソコンの開発サーバーに到達できます。稼働の保証もなく、再起動するとURLも変わります。人に見せたらすぐ閉じ、常時公開したいなら wrangler deploy を使ってください。
公開したものを消すには?
npx wrangler delete を実行して、確認に yes と答えるだけです。ダッシュボードの一覧からも消えます。