@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"]>;
格式
const format: {
from: T;
to: T & {
_id: ObjectId;
};
};
类型声明
from()
接受一个 MongoDB 对象并返回一个普通的 JavaScript 对象。
类型参数
类型参数 | 值 |
---|---|
T | Record <string , unknown > |
参数
参数 | 类型 |
---|---|
对象 | Record <string , any > |
返回值
T
to()
接受一个普通的 JavaScript 对象并将其转换为一个 MongoDB 对象。
类型参数
类型参数 | 值 |
---|---|
T | Record <string , unknown > |
参数
参数 | 类型 |
---|---|
对象 | 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 ,当您想要更高级和自定义的连接策略以解决与持久性、容器重用和连接关闭相关的挑战时,可能很有用。 |
选项 | MongoDBAdapterOptions | - |