Supabaseのログインエラー『Invalid login credentials』の原因と解決策を徹底解説!
1. はじめに
Supabaseを使った認証機能をNext.jsで開発していたところ「Invalid login credentials」エラーでつまづいたので、私と同じ現象が起きている人の役に立てればと思い記事にしました。
- 本記事では、具体的なコード例とともに原因と解決策を解説します。
2. エラーの発生状況
- サインアップは成功するが、サインイン時にエラー発生
- エラーメッセージの確認
Invalid login credentials
No API key found in request
【サインイン時のエラー例】
const { data, error } = await supabase.auth.signInWithPassword({
email: "test@example.com",
password: "password123",
});
if (error) {
console.error("Login error:", error.message);
}
Invalid login credentials
が表示される- Network タブで
No API key found in request
というエラーも発生
3. 考えられる原因と確認ポイント
3.1 Supabaseクライアントの設定を確認
supabase
クライアントが統一されているか?supabaseClient.js
でcreateClient
しているか?
【Supabaseクライアントの正しい作成例】
import { createClient } from "@supabase/supabase-js";
const supabaseUrl = process.env.NEXT_PUBLIC_SUPABASE_URL;
const supabaseAnonKey = process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY;
export const supabase = createClient(supabaseUrl, supabaseAnonKey);
- 異なるAPIキーを使用していないか?
signUp()
とsignInWithPassword()
で異なるクライアントを使用していないか確認
3.2 CORS設定を確認
- 設定の確認方法:
- Supabaseダッシュボードにログイン
Project Settings
→ Authentication →Password settings in email provider
→Email
→Confirm email
から確認
3.3 メール確認の必要性
- Supabaseはデフォルトで「Email Confirmation(メール確認)」がON
- 未確認のままだとログインできない、つまりGmailなどメールを開き、supabaseから送られた確認メールからConfirm your mailをクリックしないといけない。
デフォルトの確認メール
【メール未確認の際のエラーメッセージ】
{
"error": "Invalid login credentials"
}
- 実際の原因は 「メール未確認」 である可能性が高い
3.4 メール確認の解決策
- 新規登録時に送信される確認メールを開き、リンクをクリック
- 未確認の状態ではログインできないため注意
【メール確認のためのコード】
const { data, error } = await supabase.auth.signUp({
email: "test@example.com",
password: "password123",
});
if (error) {
console.error("Signup error:", error.message);
} else {
console.log("Check your email to confirm your account");
}
- サインアップ後に「メールを確認してください」と明示することが重要
4. まとめ
- 原因:
Invalid login credentials
のエラーは メール未確認 が主な原因 - 解決策: 確認メールのリンクをクリックする
- 学び: Supabaseのデフォルト設定ではメール確認が必要
【完全ガイド】Supabaseでブログ投稿テーブルを作成・管理する方法
Supabaseでブログ投稿テーブルを作成しよう!
ER図


🔍 「posts」テーブルって何?
Webサイトやブログには「記事」や「投稿」といったデータがありますよね? 例えば、ブログを書くときに「タイトル」「本文」「画像」「投稿日時」などの情報を保存したいですよね。
Supabaseの「posts」テーブルは、そんなブログの投稿データを管理するためのものです!
📌 「posts」テーブルのカラム(項目)一覧
カラム名 | データ型 | 説明 |
---|---|---|
id |
int8 |
投稿ごとのID(自動で増える) |
user_id |
uuid |
投稿したユーザーのID |
category_id |
int8 |
カテゴリのID(どの種類の記事か) |
title |
varchar |
記事のタイトル |
content |
text |
記事の内容(本文) |
image_path |
text |
画像のURLまたはパス |
created_at |
timestamp |
記事を作成した日時 |
updated_at |
timestamp |
記事を更新した日時 |
📌 「users」テーブルのカラム(項目)一覧
カラム名 | データ型 | 説明 |
---|---|---|
id |
uuid |
ユーザーごとのID(主キー) |
name |
varchar |
ユーザーの名前 |
email |
varchar |
ユーザーのメールアドレス |
password |
varchar |
ハッシュ化されたパスワード |
created_at |
timestamp |
ユーザー登録日時 |
updated_at |
timestamp |
ユーザー情報の更新日時 |
「user_id
」や「category_id
」には、他のテーブルのデータを関連付けることができます。これを 「外部キー(Foreign Key)」 といいます。
🛠 Supabaseで「posts」テーブルを作る方法
Supabaseでは、 GUI(画面操作) と SQL(コードを使う方法) の2種類の方法でテーブルを作れます。
✅ 方法①:GUIで作る(初心者向け)
- Supabaseにログイン し、プロジェクトを開く。
- 「Table Editor」 を開く。
- 「New Table」ボタンをクリック。
- 「posts」という名前のテーブルを作成。
- カラムを追加(上の一覧を参考に)。
user_id
やcategory_id
の 外部キー設定 をする。- 「Save」ボタンをクリック して完了!
✅ 方法②:SQLで作る(少し上級者向け)
CREATE TABLE posts (
id SERIAL PRIMARY KEY,
user_id UUID REFERENCES users(id) ON DELETE CASCADE,
category_id INT REFERENCES categories(id),
title VARCHAR(255) NOT NULL,
content TEXT NOT NULL,
image_path TEXT,
created_at TIMESTAMP DEFAULT NOW(),
updated_at TIMESTAMP DEFAULT NOW()
);
このSQLを 「SQL Editor」 に入力して実行すると、テーブルが作成されます!
🔗 外部キーってなに?
user_id
や category_id
は、 他のテーブルの情報とつながるカラム です。例えば、
user_id
→ ユーザー情報(usersテーブル)とつながるcategory_id
→ カテゴリ情報(categoriesテーブル)とつながる
つまり、 「この投稿は誰が作ったの?」 や 「この記事のカテゴリは何?」 という情報を管理できます!
🎯 まとめ
✅ Supabaseの「posts」テーブルは、ブログ記事を管理するためのもの!
✅ user_id
や category_id
は 外部キー(Foreign Key) を使って、他のテーブルとつなげられる。
✅ Supabaseでは、 GUI(Table Editor) か SQL(SQL Editor) でテーブルを作成できる。
✅ 外部キーの設定で、データの整合性を保つことができる!
これでSupabaseの「posts」テーブルについてバッチリですね!💡
ぜひ、実際にSupabaseで試してみてください! 🚀
戦士編「最終話 故郷へ」進撃の巨人2 Final Battle攻略
この記事では、進撃の巨人2 Final Battleの戦士編「最終話 故郷へ」を解説します。
全キャラクターエピソードモード一覧
Sランク条件
討伐数 | 26でSランク |
任務達成数 | 5でSランク |
戦闘時間 | 16分01秒以内でSランク |
初回クリア | アナザーモードと壁外奪還モードでジークが使用可能に。 |
攻略チャート
①ジークたちとともに目標地点んへ移動せよ!
②接近する巨人を討伐せよ!
③大型の奇行種たちを討伐せよ!
緊急討伐対象発生条件
- 斬撃装備で巨人を30体以上討伐する。
- 全ての拠点から補給物資を獲得する。
- ジークまたは車力の巨人の体力を50%以下にしない。
緊急討伐対象:女型の巨人型
獲得報酬
ヘブン・ノーマル・ハード | |
初回クリア | 一級・鋼材 |
高質木材 | |
軽量鋼材 | |
Sランク報酬 | 高質木材 |
クリア報酬 | 高質木材 |
軽量鋼材 | |
特急配備書・特殊 |
ヘル(インフェルノ) | |
初回クリア | 特殊・特殊機構 |
新型軽量鋼材 | |
超大型ボンベ | |
Sランク報酬 |
特級・特殊機構 |
超高回転ファン(SS) | |
クリア報酬 | 特級・特殊機構 |
新型軽量鋼材 | |
超大型ボンベ |
戦士編「第5話 死闘」進撃の巨人2 Final Battle攻略
この記事では、進撃の巨人2 Final Battleの戦士編「第5話 死闘」を解説します。
全キャラクターエピソードモード一覧
Sランク条件
討伐数 | 1でSランク |
任務達成数 | 1でSランク |
戦闘時間 | 2分30秒以内でSランク |
攻略チャート
①エレンを撃破せよ!
終始、巨人状態での戦闘になります。壁側に追い込んで攻撃すると倒しやすいです。
緊急討伐対象発生条件
- 5分以内にエレンの体力を30%以下にする。
緊急討伐対象:獣の巨人型
獲得報酬
ヘブン・ノーマル・ハード | |
初回クリア | なし |
ランク報酬 |
軽量ワイヤー |
一級・火薬(SS) | |
クリア報酬 | 上玉鋼 |
軽量ワイヤー | |
特級配備書・特殊 |
戦士編「最終話 故郷へ」へ
全キャラクターエピソードモード一覧
戦士編「第4話 一騎打ち」進撃の巨人2 Final Battle攻略
この記事では、進撃の巨人2 Final Battleの戦士編「第4話 一騎打ち」を解説します。
全キャラクターエピソードモード一覧
Sランク条件
討伐数 | 26
1でSランク |
任務達成数 | 1でSランク |
戦闘時間 | 3分37秒以内でSランク |
攻略チャート
①鎧の巨人を撃破せよ!
このステージでは、ずっと巨人状態で戦闘する。適当にボタン入力しているだけで倒せるくらい強い。
緊急討伐対象発生条件
- 5分以内に鎧の巨人の体力を30%以下にする。
緊急討伐対象:女型の巨人型
獲得報酬
ヘブン・ノーマル・ハード | |
初回クリア | 一級・黒金竹 |
特級・超硬質スチール | |
高回転ファン | |
Sランク報酬 | 高回転ファン |
クリア報酬 | 特級・超硬質スチール |
高回転ファン | |
特級配備書・特殊 |
ヘル(インフェルノ) | |
初回クリア | 設計図の断片・大 |
超高回転ファン | |
超大型ボンベ | |
Sランク報酬 |
設計図の断片・大 |
隕鉄(SS) | |
クリア報酬 | 設計図の断片・大 |
超回転ファン | |
超大型ボンベ |
戦士編「第5話 死闘」へ
全キャラクターエピソードモード一覧
戦士編「第3話 危地からの離脱」進撃の巨人2 Final Battle攻略
この記事では、進撃の巨人2 Final Battleの戦士編「第3話 危地からの離脱」を解説します。
全キャラクターエピソードモード一覧
Sランク条件
討伐数 | 67でSランク |
任務達成数 | 5でSランク |
戦闘時間 | 8分21秒以内でSランク |
攻略チャート
①周辺の巨人を討伐せよ!
②ベツトルトとともに残された半壊した拠点を捜索せよ!
③接近する巨人を討伐し、半壊した拠点を死守せよ!
全3カ所の拠点を死守すると成功する。任務成功後、ガスやブレードが不足するとベルトルトが自動的に物資を補給してくれる。
④ベルトルトたちと共に目標地点へ移動せよ!
⑤大型の奇行種たちを討伐し、生きて戦域を離脱せよ!
緊急討伐対象発生条件
- 斬撃装備で巨人を40体以上討伐する。
- 全ての拠点から補給物資を獲得する。
- 戦闘中に一度も巨人に掴まれない。
緊急討伐対象:鎧の巨人型
獲得報酬
ヘブン・ノーマル・ハード | |
初回クリア | 一級・鋼材 |
特級・超硬質スチール | |
高質レザー | |
Sランク報酬 | 高質レザー |
クリア報酬 | 特級・超硬質スチール |
高質レザー | |
特級配備書・特殊 |
ヘル(インフェルノ) | |
初回クリア | 巨大な赤熱結晶 |
超高回転ファン | |
超大型ボンベ | |
Sランク報酬 |
巨大な赤熱結晶 |
クリア報酬 | 巨大な赤熱結晶 |
超高回転ファン | |
超大型ボンベ |
戦士編「第4話 一騎打ち」へ
全キャラクターエピソードモード一覧
戦士編「第2話 帰還」進撃の巨人2 Final Battle攻略
この記事では、進撃の巨人2 Final Battleの戦士編「第2話 帰還」を解説します。
全キャラクターエピソードモード一覧
Sランク条件
討伐数 | 12でSランク |
任務達成数 | 1でSランク |
戦闘時間 | 4分00秒以内でSランク |
攻略チャート
①巨人が戦場に集まる前に拠点から補給物資を獲得せよ!
制限時間10分以内に補給物資を獲得する。
②ストヘス区へ帰還せよ!
緊急討伐対象発生条件
- 全ての拠点から補給物資を獲得する。
- 射撃装備で巨人を18体以上撃破する
- 戦闘中に一度も巨人に掴まれない
緊急討伐対象:顎の巨人型
獲得報酬
ヘブン・ノーマル・ハード | |
初回クリア | 特級配備書・特化 |
上玉鋼 | |
二級・特殊機構 | |
Sランク報酬 | 特級配備書・特化 |
クリア報酬 | 上玉鋼 |
二級・特殊機構 | |
toku |
ヘル(インフェルノ) | |
初回クリア | 消音機構・高機能版 |
隕鉄 | |
超軽量ワイヤー | |
Sランク報酬 |
消音機構・高機能版 |
新型軽量鋼材(SS) | |
クリア報酬 | 新型軽量鋼材 |
隕鉄 | |
超軽量ワイヤー |
戦士編「第3話 危地からの離脱」へ
全キャラクターエピソードモード一覧
戦士編「第1話 5年目の手がかり」進撃の巨人2 Final Battle攻略
この記事では、進撃の巨人2 Final Battleの戦士編「第1話 5年目の手がかり」を解説します。
全キャラクターエピソードモード一覧
Sランク条件
討伐数 | 26でSランク |
任務達成数 | 5でSランク |
戦闘時間 | 16分01秒以内でSランク |
攻略チャート
①各地で作戦を行っている兵士たちを護衛せよ!
②信煙弾の元へ向かえ!
③トロスト区本部周辺の巨人を討伐せよ!
④信煙弾の元へ向かえ!
緊急討伐対象発生条件
- 射撃装備で巨人を15体以上討伐する
- 巨人の誘導を全て成功させる。
緊急討伐対象:獣の巨人型
獲得報酬
ヘブン・ノーマル・ハード | |
初回クリア | 風雨結晶・大 |
超硬質レアメタル | |
軽量鋼材 | |
Sランク報酬 | 風雨結晶・大 |
クリア報酬 | 超硬質レアメタル |
軽量鋼材 | |
風雨結晶・中 |
ヘル(インフェルノ) | |
初回クリア | 設計図の断片・大 |
超高回転ファン | |
超大型ボンベ | |
Sランク報酬 |
設計図の断片・大 |
隕鉄(SS) | |
クリア報酬 | 設計図の断片・大 |
超回転ファン | |
超大型ボンベ |
戦士編「第2話 帰還」
全キャラクターエピソードモード一覧
「鬼神装備」の入手方法を解説!「ゼルダの伝説ティアーズオブキングダム」攻略
この記事では、ゼルダの伝説ティアーズオブキングダムの「鬼神装備」の入手方法を解説します!
クエストを受ける
1.キシノナの祠へ向かう。
中央の城から北東のミズーダ湖の近くにキシノナの祠へ行きます。キシノナの祠の北東に位置するミズーダ湖の洞窟でクエストの受注ができます。
2.洞窟前のNPCに話しかける。
洞窟へ着くと、前にNPCがいると思います。そのNPCに話しかけると「ラムダのお宝探し」を受注できます。
3.テント前の犬に餌をやる。
「ラムダのお宝探し」クエストを受注できたらテントの前に行きます。そしたら、テント前の犬に「獣肉」を5個あげます。獣肉は、動物を倒すことでゲットできます。
4.犬が指定した宝箱をウルトラハンドで持ち上げる。
獣肉5個渡すと、犬が洞窟方面に走り出し宝箱を指定してくれます。
この宝箱の中には「火炎のズボン」をゲットできます。
5.手紙が入ったボトルをチェックする。
まだクエストは終わりません。ボトルをチェックすると「ラムダの財宝 鬼人の装備」のクエストが発生します。この手順を踏むと「鬼人の装備」の前提条件は整います。
ボトルのヒントを頼りに各地に散らばる3つの宝箱を探します。
・ヒント 「鬼神の姿となりて この場に舞い戻らん 鬼神の姿と鍵は3つ。 アッカレに残る紅き砦 その頂きにある寝所 ドクロの左目 ハイラルで朽ちた千年樹に」
このように3カ所のヒントをくれるので、ここを目指していきます。
鬼神服(胴体)を入手
1.ドミズイノの祠を目指す。
監視砦から北東にあるキシノナの祠よりもさらに北東にあるドミズイノの祠の近くにアッカリ砦跡があります。アッカリ砦跡に鬼神の胴体があります。
2.宝箱へ向かいます。
ドミズイノの祠前です
建物方面へ進みます。
建物の壁と壁の間へ入っていきます。
2つ目のダメージ床を左に曲がります。
小さいスキマに入ります。
穴へ入ります。
これで「鬼神服」をゲットできます。
鬼神のブーツ(足装備)を入手
1.朽ちた千年樹へ向かう。
監視塔から南西にあるススヤイの祠の西に位置する朽ちた千年樹に行きます。
2.朽ちた千年樹の穴へ入る
朽ちた千年樹の穴へ入ります。
3.木の根っこを斬撃装備で壊す。
下まで降りると、木の根っこで塞がった道を見つけられます。木の根っこは斬撃装備で攻撃すると破壊できます。
4.上方向へ進む。
そのまま道なりに進むと上方向へ伸びる木の根っこがあるので、上へ登っていきます。
5.木の根っこがある方へ向かう。
上へ上がってそのまま真っすぐ進むと、木の根っこで防がれている道があります。これを壊して進みます。
6.鬼神のブーツをゲット
木の根っこを壊した先に「鬼神のブーツ」の宝箱があります。
鬼神の帽子(頭装備)入手
1.ドクロ池を目指す。
監視塔から北東方面に進んでいくとアッカレ地方の上にドクロ池があります。
ドクロ池の左目にドクロ池の洞窟があります。
2.岩を上る。
ドクロ池へ着いたら、左目の部分にある縦長い岩を上ります。
3.下まで降りる。
穴に落ちて下まで降りる。
5.岩壁を壊す。
下まで降りて道なりに進むと、岩壁があるので大型武器で壊します。
6.山の上部分を目指す。
岩壁を壊し先へ進むと、スタルヒノックスがいますがフル無視で大丈夫です。
フィールド内にある山の上部分へ目指します。
7.テントの中の宝箱に「鬼神帽子」があります。
山部分を上へ登るとテントがあります。そのテントの中に「鬼神帽子」が入った宝箱があります。
鬼神の大剣を入手
1.ミズーダ湖の洞窟へ戻る。
再びミズーダ湖の洞窟へ戻ります。3つの鬼神装備を揃えた状態でないとゲットできません。
2.鬼神の装備を着た状態で洞窟へ入る。
必ず鬼神の装備を3つ着た状態で洞窟へ入ってください。そうしないと扉は開きません。
3.鬼神の大剣をゲットできます。
扉の中へ入ると、鬼神の大剣を入手できます。