簡體   English   中英

Nextauth 部署在 AWS Amplify [next-auth][error][CLIENT_FETCH_ERROR]

[英]Nextauth deployed on AWS Amplify [next-auth][error][CLIENT_FETCH_ERROR]

我正在使用 NextAuth (Cognito Provider),它在我的本地機器上運行良好,但是當部署在 AWS Amplify 上時,它一直給我[next-auth][error][CLIENT_FETCH_ERROR] https://next-auth.js.org/errors#client_fetch_error Unexpected token '<', "<.DOCTYPE "... is not valid JSON並且請求https://mydomain.sample-dev.net/api/auth/session is 404

我已按照文檔進行操作並在下面添加了所需的環境變量:

Executing command: NEXTAUTH_URL=https://mydomain.sample-dev.net

Executing command: NEXTAUTH_SECRET=TestingSecretKey

Executing command: NEXT_PUBLIC_AUTH_SECRET=TestingSecretKey

我的pages/api/auth/[...nextauth].ts

import NextAuth from 'next-auth/next';
import Cognito from 'next-auth/providers/cognito';

export default NextAuth({
   providers: [
     Cognito({
       clientId: process.env.NEXT_PUBLIC_AUTH_CLIENT_ID!,
       clientSecret: process.env.NEXT_PUBLIC_AUTH_CLIENT_SECRET!,
       issuer: process.env.NEXT_PUBLIC_AUTH_ISSUER!,
       idToken: true,
       checks: 'nonce',
     }),
  ],
  debug: false,
  secret: process.env.NEXTAUTH_SECRET || process.env.NEXT_PUBLIC_AUTH_SECRET,
});

知道我做錯了什么或遺漏了什么嗎?

[next-auth][error][CLIENT_FETCH_ERROR]錯誤表明NEXTAUTH_URL環境變量由於配置錯誤而無法訪問使用。

為了解決錯誤,您主要需要在 AWS Amplify 控制面板上定義所需的環境變量

繼續 select 在App settings下受影響的應用程序,然后單擊Environment variables並按照說明進行操作。

然后,單擊構建設置(同樣位於 App 設置下)菜單,以編輯您的App 構建規范腳本並使環境變量可訪問,如下圖所示。

build:
  commands:
    - npm run build:
    - echo "NEXTAUTH_URL=$NEXTAUTH_URL" >> .env

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM