Dub

Dub 是一个面向创业者、创作者和增长团队的开源现代链接管理平台。

此插件允许您在用户通过 Dub 链接注册时追踪潜在客户。它还增加了 OAuth 链接支持,使您能够构建集成,扩展 Dub 的链接管理基础设施。

安装

安装插件

首先,安装插件:

npm install @dub/better-auth

安装 Dub SDK

接下来,在您的服务器上安装 Dub SDK:

npm install dub

配置插件

将插件添加到您的认证配置中:

auth.ts
import { betterAuth } from "better-auth"
import { dubAnalytics } from "@dub/better-auth"
import { dub } from "dub"

export const auth = betterAuth({
    plugins: [
        dubAnalytics({
            dubClient: new Dub()
        })
    ]
})

使用方法

潜在客户追踪

默认情况下,插件会将注册事件作为潜在客户进行追踪。您可以通过将 disableLeadTracking 设置为 true 来禁用此功能。

import { dubAnalytics } from "@dub/better-auth";
import { betterAuth } from "better-auth";
import { Dub } from "dub";

const dub = new Dub();

const betterAuth = betterAuth({
  plugins: [
    dubAnalytics({
      dubClient: dub,
      disableLeadTracking: true, // 禁用潜在客户追踪
    }),
  ],
});

OAuth 账户关联

该插件支持通过 OAuth 进行账户关联。

首先,您需要在 Dub 中设置 OAuth 应用。Dub 支持 OAuth 2.0 认证,如果您构建扩展 Dub 功能的集成应用,推荐使用此方式。了解更多关于 OAuth 的信息

获取到客户端 ID 和客户端密钥后,您就可以配置插件了。

dubAnalytics({
  dubClient: dub,
  oauth: {
    clientId: "your-client-id",
    clientSecret: "your-client-secret",
  },
});

在客户端,您需要使用 dubAnalyticsClient 插件。

import { createAuthClient } from "better-auth/client";
import { dubAnalyticsClient } from "@dub/better-auth/client";

const authClient = createAuthClient({
  plugins: [dubAnalyticsClient()],
});

要与 Dub 关联账户,您需要使用 dub.link

POST
/dub/link
const { data, error } = await authClient.dub.link({    callbackURL: "/dashboard", // required});
属性描述类型
callbackURL
关联后重定向的 URL
string

配置选项

您可以为插件传递以下选项:

dubClient

Dub 客户端实例。

disableLeadTracking

禁用注册事件的潜在客户跟踪。

leadEventName

注册潜在客户的事件名称。

customLeadTrack

自定义潜在客户跟踪函数。

oauth

Dub OAuth 配置。

oauth.clientId

Dub OAuth 的客户端 ID。

oauth.clientSecret

Dub OAuth 的客户端密钥。

oauth.pkce

为 Dub OAuth 启用 PKCE。

On this page