微信小程序用户登录后,通过该接口绑定该用户授权的微信手机号。

使用 SDK 操作如下

  const { data, error } = await supabase.auth.wechatBindPhone({
  code: '013fA51w3S8Ad03D0C3w31WiTT3fA51k',
})
  

参数

参数 类型 是否必填 说明
code String 需要将 button 组件 open-type 的值设置为 getPhoneNumber,当用户点击并同意之后,可以通过 bindgetphonenumber 事件回调获取到动态令牌code,然后把code传到开发者后台,并在开发者后台调用微信后台提供的 phonenumber.getPhoneNumber 接口,消费code来换取用户手机号。每个code有效期为5分钟,且只能消费一次。

返回参数

   //请求成功,返回用户信息
 data: { user: User }; error: null 
 //请求出错,返回错误信息
 data: { user: null }; error: AuthError 
  

返回示例

data结构如下:

  {
    "id":"e38801c5xxxxxx",
    "aud":"authenticated",
    "role":"authenticated",
    "email":"",
    "phone":"131xxxxxx",
    "wechat_id":"ok1s85Rxxxxxx",
    "wechat_unionid":"",
    "last_sign_in_at":"2023-03-13T08:37:51.308806Z",
    "app_metadata":{
        "provider":"wechat_mini",
        "providers":[
            "wechat_mini"
        ]
    },
    "user_metadata":{
        "arvatar":"http://tmp/z0dymKP81zu04f1fa14be668b52cd87aa12b759cf411.jpeg",
        "nickname":{
            "cursor":2,
            "keyCode":70,
            "value":"ff"
        }
    },
    "identities":[

    ],
    "created_at":"2023-03-13T06:23:34.596074Z",
    "updated_at":"2023-03-13T08:37:51.31062Z"
}