ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
YouTube Data API (v3) のエラー
このページは、YouTube Data API (v3) で発生しやすいエラーの入口です。まずは API キー不足なのか、リファラー制限の問題なのか、クォータ超過なのかを切り分けて確認すると、原因にたどり着きやすくなります。
代表的なエラー
| コード | メッセージ | 主な原因 | 確認 |
|---|---|---|---|
| 403 | Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup. | API キーが付いていない / 認証なしリクエストの上限超過 | クエリパラメータに key=YOUR_KEY があるか |
| 403 | Requests from referer ... are blocked. | HTTP リファラー制限 | Cloud Console の API キー設定で許可ドメインを確認 |
| 403 | The request cannot be completed because you have exceeded your quota. | 1 日の割当 (10,000 unit) 超過 | Cloud Console → IAM → 割り当て で残量確認 |
| 403 | The request is missing a valid API key. | API キー未送信 | URL に ?key=... が含まれているか |
| 400 | Invalid value for the request parameter | パラメータの形式不正(videoId が空など) | API リファレンスでパラメータ仕様を確認 |
| 404 | Video not found / Channel not found | videoId / channelId 不在 or 削除済み | YouTube サイトで動画 URL が開けるか |
| 401 | Invalid Credentials | OAuth トークン期限切れ / 改ざん | リフレッシュトークンで再取得 |
Requests from referer ... are blocked. の見方
このエラーは、YouTube Data API を利用するリクエストで Referer が空、または API キーに設定した「HTTP リファラー」制限に合致しないドメインからアクセスしたときに発生します。
確認するべきこと
- Google Cloud Console → APIs & Services → 認証情報
- 該当 API キーをクリック
- アプリケーションの制限: 「HTTP リファラー (ウェブサイト)」が選択されているか
- ウェブサイトの制限: アクセス元のドメインが含まれているか
- 例:
https://example.com/* - サブドメイン含めるなら
https://*.example.com/* - localhost 開発なら
http://localhost:*/*も追加
- 例:
- API の制限: 「YouTube Data API v3」が選択されているか
クォータ消費の目安
| 操作 | 消費ユニット | 1 日上限 (デフォルト 10,000) |
|---|---|---|
| 動画詳細取得 (videos.list) | 1 | 10,000 回 |
| チャンネル詳細取得 (channels.list) | 1 | 10,000 回 |
| プレイリスト一覧 (playlists.list) | 1 | 10,000 回 |
| 検索 (search.list) | 100 | 100 回(一気に枯渇する) |
| 動画アップロード (videos.insert) | 1,600 | 6 回 |
| 動画更新 (videos.update) | 50 | 200 回 |
| 動画削除 (videos.delete) | 50 | 200 回 |
search.list は重いので、繰り返し呼び出すなら以下の最適化を:
- 結果をキャッシュする(Redis / DB)
- 動画 ID を取って後は videos.list で詳細取得
- 1 リクエストあたりの結果数 (
maxResults=50) を最大化 - クォータ追加申請(Cloud Console から無料で申請可能、承認は数営業日)
API キーの取得手順(おさらい)
1. Google Cloud Console (console.cloud.google.com) にログイン
2. プロジェクトを作成 / 選択
3. 左メニュー → APIs & Services → ライブラリ
4. "YouTube Data API v3" を検索 → 「有効にする」
5. 左メニュー → 認証情報 → 「認証情報を作成」→ API キー
6. キーが発行されるので「キーを制限」で:
- アプリケーションの制限: HTTP リファラー
- ウェブサイト: 自サイトドメインを追加
- API の制限: YouTube Data API v3
7. キーをコピーして安全な場所に保存(公開リポジトリに絶対 push しない)
動作確認用 curl
# 動画詳細取得(API キーは必ず HTTPS 経由で)
curl "https://www.googleapis.com/youtube/v3/videos?part=snippet,statistics&id=dQw4w9WgXcQ&key=YOUR_API_KEY"
# 期待される結果: 200 OK + JSON
# 403: API キーまたはリファラー制限の問題
# 400: パラメータ不正
関連
- API キーは 絶対にフロントエンドに直接埋め込まない — サーバ経由で叩く設計を推奨
- 商用利用は API 利用規約と YouTube ブランドガイドラインに従う
- 埋め込みプレーヤーは API キー不要で
<iframe>で済むケースが多い - 動画分析・統計用途では YouTube Analytics API(別 API)が必要なケースあり
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
子ページはありません
同階層のページ
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 Spring Frameworkのアノテーション一覧
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- PHPでのファイルアップロード方法|multipart/form-dataと$_FILES 2026-08-07 17:15:57
- PHP $_SERVERとは|DOCUMENT_ROOT・PHP_SELFなど主な要素 2026-08-07 17:15:57
- Scratchのアカウントの作り方|メールアドレスとユーザー名の登録手順 2026-08-07 17:15:57
- djangoにおけるMVCアプリケーション実装例 2026-08-07 17:15:57
- Bluetoothとは|仕組み・BLEとClassicの違い・用途 2026-08-07 17:15:57
- Spring Bootのテスト入門|@SpringBootTestとJUnitでの単体・結合テスト 2026-08-07 17:15:57
- APIキー取得方法 2026-08-07 17:15:56
- インストール方法(Windows版) 2026-08-07 17:15:56
- Java とは?言語仕様・JVM・主要フレームワーク一覧 2026-08-07 17:15:56
- 【PHPフレームワーク】Laravelの使い方 2026-08-07 17:15:56
- Scratch 作品の公開方法 2026-08-07 17:15:56
- Google OAuth 2.0 認証の実装方法 2026-08-07 17:15:56
- データベースとは?RDB / NoSQL / SQL の基礎 2026-08-07 17:15:56
- インストール(eclipseプラグイン) 2026-08-07 17:15:56
- Spring Frameworkの使い方 2026-08-07 17:15:56
コメントを削除してもよろしいでしょうか?