TikTok

TikTok 提供者设置和使用说明。

获取您的 TikTok 凭证

要与 TikTok 集成,您需要通过在 TikTok 开发者门户 创建应用程序来获取 API 凭证。

请按照以下步骤操作:

  1. 在 TikTok 开发者门户创建账户
  2. 创建一个新的应用程序
  3. 设置沙盒环境用于测试
  4. 配置重定向 URL(必须为 HTTPS)
  5. 记下您的客户端密钥和客户端密钥
  • TikTok API 不支持 localhost。您需要在重定向 URL 中使用公开域名,并在本地测试时使用 HTTPS。您可以使用 NGROK 或其他类似工具来实现。
  • 对于测试,您需要使用 沙盒模式,并在 TikTok 开发者门户中启用它。
  • 默认作用域为 user.info.profile。如需其他作用域,请参考 可用作用域 文档。

确保将重定向 URL 设置为本地开发的有效 HTTPS 域名。对于生产环境,应将其设置为应用程序的 URL。如果更改了认证路由的基本路径,请相应更新重定向 URL。

  • TikTok API 不提供电子邮件地址。Better Auth 使用用户稳定的 open_id 创建一个不可路由的 {open_id}@tiktok.placeholder.invalid 地址。
  • 若要在生产环境中使用,您需要向 TikTok 申请批准您计划使用的作用域。

配置提供者

要配置提供者,您需要导入提供者,并将其传递给认证实例的 socialProviders 选项。

auth.ts
import { betterAuth } from "better-auth"

export const auth = betterAuth({
    socialProviders: {
        tiktok: { 
            clientSecret: process.env.TIKTOK_CLIENT_SECRET as string, 
            clientKey: process.env.TIKTOK_CLIENT_KEY as string, 
        }, 
    },
})

使用 TikTok 登录

要使用 TikTok 登录,您可以使用客户端提供的 signIn.social 函数。signIn 函数接受一个包含以下属性的对象:

  • provider:要使用的提供者。应设置为 tiktok。
auth-client.ts
import { createAuthClient } from "better-auth/client"
const authClient =  createAuthClient()

const signIn = async () => {
    const data = await authClient.signIn.social({
        provider: "tiktok"
    })
}