Cloudflare Workersで構築された短縮URLサービスです。
- 長いURLを短いURLに変換
- カスタム短縮コードの指定(オプション)
- シンプルで使いやすいWebインターフェース
- Cloudflare KVを使用した高速なURL解決
- 自動的な301リダイレクト
npm installnpx wrangler loginnpx wrangler kv:namespace create "URL_STORE"出力されたKV Namespace IDをコピーして、wrangler.tomlのidフィールドに設定してください。
[[kv_namespaces]]
binding = "URL_STORE"
id = "YOUR_KV_NAMESPACE_ID" # ここに設定npm run devブラウザで http://localhost:8787 を開いてテストできます。
npm run deploy- Cloudflareダッシュボードにアクセス
- Workers & Pages → あなたのWorker → Settings → Triggers
- Custom Domains → Add Custom Domain
- 所有しているCloudflareドメイン(例:
short.yourdomain.com)を入力
エンドポイント: POST /api/create
リクエスト:
{
"longUrl": "https://example.com/very/long/url",
"customCode": "my-link" // オプション
}レスポンス:
{
"shortUrl": "https://your-domain.com/abc123",
"shortCode": "abc123",
"longUrl": "https://example.com/very/long/url"
}エンドポイント: GET /{shortCode}
短縮コードに対応する元のURLへ301リダイレクトします。
url-shorter/
├── src/
│ ├── index.ts # メインWorkerスクリプト
│ └── types.ts # TypeScript型定義
├── wrangler.toml # Cloudflare Workers設定
├── package.json # 依存関係
├── tsconfig.json # TypeScript設定
└── README.md # このファイル
- Cloudflare Workers: サーバーレス実行環境
- Cloudflare KV: URLマッピングの永続化ストレージ
- TypeScript: 型安全な開発
MIT