REST APIを介してDiscordのソーシャルログインを実装するため
- Honoでログイン画面を実装する
- Auth.jsでソーシャルログイン機能を実装し、画面と連携する
UnknownAction: Cannot parse action at /api/auth/callback/discord. Read more at https://errors.authjs.dev#unknownaction
これはpackages/core/src/lib/utils/web.ts
にあるparseActionAndProviderId
という関数で、引数が持っているbasePath
がデフォルトで持っている/auth
だったため、/api/auth
と合致せずエラーを投げていた。
AuthConfig.basePath
を/api/auth
にしたら通った。
UntrustedHost: Host must be trusted. URL was: http://5409-240f-3e-b3e2-1-cbd-43a4-6c82-bac2.ngrok-free.app/auth/callback/discord. Read more at https://errors.authjs.dev#untrustedhost
これは資料を見る限り、AuthConfig.trustHost
がtrue
なら問題なさそうなので、素直にそうした。
MissingSecret: Please define a secret
.. Read more at https://errors.authjs.dev#missingsecret
こちらについては資料内にnpx auth secret
でランダム文字列を生成する手順が書かれていたので、素直にそうした。
InvalidCheck: PKCE code_verifier cookie was missing.. Read more at https://errors.authjs.dev#invalidcheck
未解決
- Deployment | Auth.js
- @auth/core | Auth.js
- errors | Auth.js
- providers | Auth.js
- providers/discord | Auth.js
- Refresh token rotation | Auth.js
- Discord Developer Portal — Documentation — OAuth2
- next-auth/packages/core/src/types.ts at @auth/[email protected] · nextauthjs/next-auth
- next-auth/packages/core/src/lib/utils/web.ts at @auth/[email protected] · nextauthjs/next-auth
- Next.jsのRoute HandlersでHonoを使いつつAuth.jsで認証してCloudflare PagesにDeployしたい
- OAuthとは | OAuthの仕組みを図解でわかりやすく解説 - ITを分かりやすく解説