@auth/mongodb-adapter
Auth.js / NextAuth.js 的官方 MongoDB 适配器。
安装
npm install @auth/mongodb-adapter mongodbMongoDBAdapterOptions
这是 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 | - |