ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
本ページは Firebase で運用中によく遭遇するエラーを横断的にまとめたハブ記事です。各エラーの詳細はサービス別の子ページに分けて掲載しています。まずは下表で症状から該当ケースを見つけ、必要に応じて詳細記事へ進んでください。
Firebase Authentication
| code | 意味 | 典型的な対処 |
|---|---|---|
auth/email-already-in-use | そのメールアドレスは既に登録済み | ログイン誘導 or パスワード再発行 |
auth/invalid-email | メールアドレス書式不正 | クライアントでバリデート |
auth/user-not-found | 該当ユーザがいない | 新規登録誘導(メッセージは曖昧に) |
auth/wrong-password | パスワード不一致 | 「ID/PW が正しくありません」と表示(情報漏洩防止) |
auth/weak-password | パスワード強度不足(6 文字未満) | UI でルール提示 |
auth/too-many-requests | 連続失敗で一時的ロック | 時間をおいて再試行 / reCAPTCHA |
auth/network-request-failed | ネットワーク断 | リトライ + オフライン UI |
auth/operation-not-allowed | 該当の認証プロバイダが無効化されている | Console で有効化 |
auth/account-exists-with-different-credential | 同メールが別プロバイダで登録済み | 既存プロバイダでログインし linkWithCredential |
auth/id-token-expired | ID トークン期限切れ | SDK は自動更新。手動なら getIdToken(true) |
auth/invalid-action-code | 確認 URL / 再設定リンク失効 | 再送信 |
Cloud Firestore
| code | 意味 | 典型的な対処 |
|---|---|---|
permission-denied | セキュリティルールで拒否 | Rules を見直す。request.auth.uid を確認 |
unauthenticated | ログインしていない | Auth ステート確認後にクエリ |
unavailable | サービス一時停止 / オフライン | リトライ(指数バックオフ) |
deadline-exceeded | タイムアウト | クエリを軽くする、インデックス追加 |
failed-precondition | インデックス不足 / トランザクション競合 | エラーメッセージのリンクからインデックス作成 |
resource-exhausted | クォータ超過 | クォータ拡張申請、書込頻度を抑制 |
not-found | ドキュメント不在 | .exists をチェック |
aborted | トランザクション中断(再試行されるが上限あり) | トランザクション競合の削減 |
Realtime Database
| code | 意味 | 典型的な対処 |
|---|---|---|
PERMISSION_DENIED | ルールで拒否 | rules.json の .read / .write を確認 |
UNAVAILABLE / NETWORK_ERROR | 接続断 | オフラインキャッシュに任せる、再接続待ち |
DISCONNECTED | WebSocket 切断 | SDK が自動再接続 |
OVERRIDDEN_BY_SET | 同パスへの set が競合 | update に変える、トランザクション化 |
Cloud Functions for Firebase
| code | 意味 | 典型的な対処 |
|---|---|---|
deadline-exceeded | 関数タイムアウト(既定 60 秒) | 分割 / バックグラウンド化、timeoutSeconds 拡大 |
resource-exhausted | メモリ・同時実行上限 | memory 設定変更、最大インスタンス数を見直し |
internal | 関数内で未捕捉例外 | Cloud Logging のスタックトレースを確認 |
invalid-argument | クライアントから渡したデータが不正 | 関数側でバリデート |
unauthenticated | onCall で context.auth が null | クライアントでサインイン状態確認 |
permission-denied | カスタムクレームによる権限不足 | クレーム付与の処理を見直す |
| Deployment failed | デプロイ時のビルド失敗 | firebase deploy --debug でログ確認、Node バージョン整合 |
Firebase Hosting
| 状況 | 原因 | 対処 |
|---|---|---|
| 404 Not Found | firebase.json の rewrites 設定漏れ | SPA は "source": "**", "destination": "/index.html" |
| カスタムドメインで証明書発行されない | DNS の TXT / A レコード不整合 | Console の指示通りに DNS 更新、TTL を短く |
| 古いコンテンツが表示 | CDN キャッシュ | Cache-Control ヘッダ調整、強制再読み込み |
| Deploy quota exceeded | 1 日のデプロイ回数 / バージョン数上限 | 不要バージョンを削除、デプロイをまとめる |
初動:エラーオブジェクトを見る
Firebase SDK のエラーには code(文字列)と message(人間向け説明)が必ず含まれます。クライアントでは次のように分岐させます。
import { signInWithEmailAndPassword } from 'firebase/auth';
try {
await signInWithEmailAndPassword(auth, email, password);
} catch (e) {
switch (e.code) {
case 'auth/wrong-password':
case 'auth/user-not-found':
// 情報漏洩防止のため同じメッセージで返す
setMessage('メールアドレスまたはパスワードが正しくありません');
break;
case 'auth/too-many-requests':
setMessage('試行回数が多すぎます。しばらくしてからお試しください');
break;
case 'auth/network-request-failed':
setMessage('ネットワークエラー。接続を確認してください');
break;
default:
console.error(e); // 想定外は開発者へ
setMessage('エラーが発生しました');
}
}
セキュリティルールの基本確認
Firestore / Realtime DB / Storage はすべてサーバ側ルールで拒否されます。permission-denied が出たらまずルールを疑うのが鉄則です。
// Firestore セキュリティルール(最小例)
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /users/{uid} {
allow read: if request.auth != null && request.auth.uid == uid;
allow write: if request.auth != null && request.auth.uid == uid;
}
}
}
関連
- Firebase — 親カテゴリ
- 各エラーの詳細は子ページを参照
- エラー一覧 — WordPress 版
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?