付録付録A ・ 読むのにかかる時間 約4分

詰まったとき辞書

エラー文の意味と、その直し方

エラーの文面は、たいてい英語です。でも、意味が分かってしまえば怖くありません。ここに出てくるものは、この教科書を作る過程で実際に僕が踏んだものが中心です。

この付録の使い方

  • 詰まったら、まず画面に出ている英語をこのページで探す
  • 無ければ、そのエラー文をそのままClaude Codeに貼って聞く
  • 「何をしていて、何が起きて、何を期待していたか」を添えると、解決が早い

まず覚えてほしい、たった1つのこと

エラーが出たときにやるべきことは、その文面をコピーして、そのままAIに貼ることです。要約しないでください。省略もしないでください。人間には意味不明な英語でも、AIには十分な手がかりです。

詰まったときの万能プロンプト

次のエラーが出ました。原因を調べて、直してください。 (ここにエラー文をそのまま貼る) ・私がやろうとしていたこと:(例:画像をR2に保存しようとした) ・期待していた結果:(例:管理画面に画像が増える) ・実際に起きたこと:(例:成功と出るのに増えていない) 直したあと、なぜそうなっていたのかを、専門用語を使わずに説明してください。

公開・ログインまわり

エラー文と、その意味

Not logged in / Authentication error
Cloudflareへのログインが切れています。ログインし直せば直ります。しばらく使っていないと期限が切れることがあります。
A worker with this name already exists
同じ名前のものが、すでにあなたのアカウントにあります。名前を変えるか、既存のものを上書きするかを選びます。
command not found: node
Node.jsが入っていません。エラーというより「まだ無い」という報告です。第4章に戻って入れてください。
404 Not Found(公開したのに)
公開したフォルダの中に index.html が無いか、フォルダの指定がずれています。

R2まわり

エラー文と、その意味

Resource location: local
エラーではないのに、一番厄介なものです。本物のR2ではなく、パソコンの中の練習用の場所に保存されています。「本物のR2(リモート)に保存してください」と伝え直してください。
TypeError: env.BUCKET is undefined
Workerに「この倉庫を使っていい」という権限(binding)が渡っていません。設定ファイルを確認し、直したあとに公開し直す必要があります。
A bucket with this name already exists
そのバケット名は使用済みです。別の名前にして、設定ファイル側の名前も揃えてください。
The specified key does not exist
そのキーのファイルがありません。キーは1文字違うだけで別物です。一覧を出して見比べるのが確実です。

表示まわり

症状と、その意味

画像が表示されず、ダウンロードが始まる
Content-Type(種類の札)が付いていません。保存時か、返すときのどちらかが抜けています。
直したのに、古い内容が表示され続ける
キャッシュです。強制的に再読み込みするか、シークレットウィンドウで確認してください。それでも古い場合は、公開そのものができていない可能性があります。
日本語が「?」や記号に化ける
文字の種類の指定が抜けています。「文字コードの指定(UTF-8)を入れてください」と伝えれば直ります。
パソコンでは見えるのに、スマホで見えない
localhostのURLを見ている可能性があります。localhostは自分のパソコンの中だけのアドレスです。公開後のURLで確認してください。

どうしても分からないとき

3回試して直らなかったら、いったん手を止めて、こう頼んでください。

行き詰まったときのプロンプト

同じ問題が3回直りません。いったん切り分けたいです。 いまの状態を調べて、次を教えてください。 1. どこまでは正しく動いていて、どこから動いていないのか 2. 原因の候補を、可能性の高い順に3つ 3. それぞれを確かめるための、一番簡単な方法 まだ直さなくていいので、切り分けだけ先にお願いします。

直そうとする前に切り分ける。これは人間のエンジニアがやっていることと同じです。急がば回れが、結局は一番速いです。