@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 物件
類型參數
類型參數 | 值 |
---|---|
T | Record <string , unknown > |
參數
參數 | 類型 |
---|---|
object | Record <string , any > |
返回
T
to()
取得一個普通的 JavaScript 物件並將其轉換為 MongoDB 物件
類型參數
類型參數 | 值 |
---|---|
T | Record <string , unknown > |
參數
參數 | 類型 |
---|---|
object | Record <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 | - |