WeChat

WeChat 提供者的设置和使用方法。

获取微信凭证

要使用微信登录,您需要在 微信开放平台 注册一个网站应用,将 Authorization Callback Domain 设置为更好的认证域名,并获取您的 App ID 和 App Secret。

配置提供者

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

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

export const auth = betterAuth({
    socialProviders: {
        wechat: { 
            clientId: process.env.WECHAT_CLIENT_ID, 
            clientSecret: process.env.WECHAT_CLIENT_SECRET, 
        }, 
    },
})

可选配置

您可以使用以下选项来自定义微信提供者:

auth.ts
export const auth = betterAuth({
    socialProviders: {
        wechat: {
            clientId: process.env.WECHAT_CLIENT_ID,
            clientSecret: process.env.WECHAT_CLIENT_SECRET,
            // 可选:设置微信登录页面的 UI 语言
            lang: "cn", // 或 "en" 表示英文
            // 可选:使用自定义作用域
            scope: [], // "snsapi_login" 用于网页二维码登录。
        },
    },
})

使用微信登录

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

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

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

使用方式

平台支持

微信提供者当前支持网站应用平台类型,允许 Web 应用实现微信二维码登录。

开发注意事项

  • 跳转 URL 域名必须与微信开放平台中配置的域名匹配