跳至內容
從 NextAuth.js v4 遷移?請閱讀 我們的遷移指南.
API 參考@auth/mongodb-adapter

@auth/mongodb-adapter

Auth.js / NextAuth.js 的官方 MongoDB 适配器。

安裝

npm install @auth/mongodb-adapter mongodb

MongoDBAdapterOptions

這是 MongoDB 适配器選項的介面。

屬性

collections?

optional collections: {
  Accounts: string;
  Sessions: string;
  Users: string;
  VerificationTokens: string;
};

MongoDB 集合的名稱。

Accounts?
optional Accounts: string;
Sessions?
optional Sessions: string;
Users?
optional Users: string;
VerificationTokens?
optional VerificationTokens: string;

databaseName?

optional databaseName: string;

您想給 MongoDB 資料庫的名稱

onClose()?

optional onClose: (client) => Promise<void>;

用於管理 MongoDB 客戶端關閉的回呼函式。當 client 作為返回 MongoClient | Promise<MongoClient> 的函式提供時,這可能會很有用。它允許更自訂地管理資料庫連線,解決持久性、容器重用和連線關閉問題。

參數
參數類型
客戶端MongoClient
返回

Promise<void>


defaultCollections

const defaultCollections: Required<Required<MongoDBAdapterOptions>["collections"]>;

format

const format: {
  from: T;
  to: T & {
     _id: ObjectId;
  };
};

類型宣告

from()

取得 MongoDB 物件並返回一個普通的 JavaScript 物件

類型參數
類型參數
TRecord<string, unknown>
參數
參數類型
objectRecord<string, any>
返回

T

to()

取得一個普通的 JavaScript 物件並將其轉換為 MongoDB 物件

類型參數
類型參數
TRecord<string, unknown>
參數
參數類型
objectRecord<string, any>
返回

T & { _id: ObjectId; }


MongoDBAdapter()

MongoDBAdapter(client, options): Adapter

參數

參數類型描述
客戶端MongoClient | Promise<MongoClient> | () => MongoClient | Promise<MongoClient>MongoDB 客戶端。

MongoDB 團隊建議提供一個未連線的 MongoClient 執行個體,以避免在客戶端無法連線時出現未處理的 promise 拒絕。

或者,您也可以傳遞
- 解析為已連線的 MongoClient 的 Promise(不建議)。
- 函式,用於處理更複雜和自訂的連線策略。

使用一個返回 MongoClient | Promise<MongoClient> 的函式,並結合 options.onClose,當您想要更進階且客製化的連線策略來解決與持久性、容器重用和連線關閉相關的挑戰時,會很有用。
選項 (options)MongoDBAdapterOptions-

返回

轉接器 (Adapter)

Auth.js © Balázs Orbán 和團隊 -2024