# 短信验证

  • 接口说明: 短信验证
  • 接口地址: /api/sms/verify
  • 请求方式: POST

# 请求参数

参数名称 类型 是否必须 描述
mobile string 手机号码
code string 验证码
type string 类型说明: login 注册/登录 bind 绑定手机号 rebind 重绑手机号 reset_pwd 重设登录密码 reset_pay_pwd 重设支付密码 verify 验证手机号是否为当前用户(可不传手机号,但必须传 Token)
password string 类型为 reset_pwd 时必须
pay_password string 类型为 reset_pay_pwd 时必须
pay_password_confirmation string 类型为 reset_pay_pwd 时必须
inviteCode string 类型为 login 时 可传邀请码进行邀请注册
register int type为login时,传入本字段决定是否自动注册手机号为账号的用户(0 不注册 1 注册)默认不注册
token string 手机号登陆时绑定微信传入。通过[微信公众号H5无感登陆](wechat-user.html)获取
inviteCode string 类型为 login 时 可传邀请码进行邀请注册
js_code string 小程序用户名密码登录时传入,会绑定小程序用户信息。 微信小程序登陆 code,https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html
iv string 小程序用户名密码登录时传入,会绑定小程序用户信息。 微信小程序用户数据数据加密算法的初始向量,https://developers.weixin.qq.com/miniprogram/dev/api/open-api/user-info/wx.getUserInfo.html
encryptedData string 小程序用户名密码登录时传入,会绑定小程序用户信息。 微信小程序用户包括敏感数据在内的完整用户信息的加密数据,https://developers.weixin.qq.com/miniprogram/dev/api/open-api/user-info/wx.getUserInfo.html

# 请求示例

{
  "data": {
    "attributes": {
      "mobile": "mobile",
      "code": "29416",
      "type": "login"
    }
  }
}

# 返回说明

  • 成功, http 状态码: 200
  • 失败, http 状态码: 400 未绑定用户 no_bind_user

# 返回结果 (成功) login 类型

参数名称 类型 出现要求 描述
type string token 数据模型的类型
id int 成功 分类 id
attributes object 成功 数据模型的属性
attributes.token_type int 成功 token 类型
attributes.expires_in string 成功 过期时间
attributes.access_token string 成功 token
attributes.refresh_token string 成功 刷新 token

# 返回结果 (失败) login 类型

参数名称 类型 出现要求 描述
status string 错误码 400
code int 错误描述 no_bind_user
token object 供注册、登陆时进行手机号绑定使用
user null 固定值null

# 返回结果 (成功) bind reset_pwd reset_pay_pwd 类型

参数名称 类型 出现要求 描述
type string token 数据模型的类型
id int 成功 用户 id
attributes object 成功 数据模型的属性
attributes.username int 成功 用户名
attributes.mobile string 成功 手机号
attributes.lastLoginIp string 成功 最后登录时间
attributes.createdAt string 成功 注册时间
attributes.updatedAt string 成功 更新时间

# 返回示例

login 类型 示例:

{
  "data": {
    "type": "token",
    "id": "1",
    "attributes": {
      "token_type": "Bearer",
      "expires_in": 2592000,
      "access_token": "eyJ0eXAiOiJKV1QiLCJhbGci....hsL7aw50A",
      "refresh_token": "def50200c6613b478a7...3abb"
    }
  }
}
{
    "errors": [
        {
            "status": 400,
            "code": "no_bind_user",
            "token": "6zBp45V....EfqUvJz2",
            "user": null
        }
    ]
}

bind reset_pwd 类型 示例:

{
  "data": {
    "type": "users",
    "id": "1",
    "attributes": {
      "username": "username",
      "mobile": "mobile",
      "lastLoginIp": "",
      "createdAt": "2019-12-12T00:00:00+08:00",
      "updatedAt": "2019-12-12T00:00:00+08:00"
    }
  }
}

reset_pay_pwd 类型 示例:

{
  "data": {
    "type": "users",
    "id": "53",
    "attributes": {
      "id": 53,
      "username": "username",
      "mobile": "mobile",
      "avatarUrl": "",
      "threadCount": 0,
      "followCount": 0,
      "fansCount": 0,
      "follow": null,
      "status": 0,
      "loginAt": null,
      "joinedAt": "2019-12-29T19:18:46+08:00",
      "expiredAt": null,
      "createdAt": "2019-12-29T19:18:46+08:00",
      "updatedAt": "2020-02-18T17:21:57+08:00",
      "canEdit": true,
      "canDelete": true,
      "canWalletPay": true,
      "registerReason": "",
      "banReason": "",
      "originalMobile": "mobile",
      "registerIp": "127.0.0.1",
      "lastLoginIp": "",
      "identity": "",
      "realname": ""
    }
  }
}