---
order: 1
navTitle: 发送登录验证码
---
# 发送登录验证码

1. 用于用户使用手机验证码登录时，发送登录验证码。
2. 用户在正确输入账号密码后，还需使用手机验证码进行二次校验的时候，再次发送登录验证码，这时候可以不指定手机号。

## 调用说明

请求方式：`POST`\
请求url：`/api/auth/sendLoginCode`\
请求参数示例：

```json
{
    "phone": "13112345678",
    "userDirectory": "sys",
    "captcha":""
}
```

参数说明：

| 参数          | 必须 | 说明                                                                                           |
| :------------ | :--- | :--------------------------------------------------------------------------------------------- |
| phone         | 否   | 手机号                                                                                         |
| userDirectory | 否   | 用户类型，`sys`代表系统用户，`external`代表外部用户，默认为`sys`                               |
| captcha       | 否   | 图片验证码，用于多次填写失败手机号后，进行人机校验，避免别人随便输入手机号来验证是否有绑定用户 |

说明： 如果两个`phone`和`userDirectory`都不指定，整个参数都可以不传

返回值示例：

```json
{
    "result": false,
    "errorCode": "userNotFound",
    "message": "该手机号没有绑定账号"
}
```

参数说明：

| 参数         | 说明                     |
| :----------- | :----------------------- |
| result       | 校验结果，`true`标识成功 |
| errorCode    | 错误编码                 |
| message      | 错误文本提示             |
| captchaShown | 是否需要展示图片验证码   |

`errorCode`说明

| errorCode             | 说明                                                                                |
| :-------------------- | :---------------------------------------------------------------------------------- |
| phoneCodeLoginDisable | [系统设置](../../../../sys-settings/README.md)不允许使用手机验证码登录       |
| captcha               | 图片验证码输入错误                                                                  |
| senLoginCodeFailed    | 发送短信验证码失败号                                                                |
| serviceNotFound       | 系统没有开启使用发送验证码的服务                                                    |
| waiting               | 手机号在限制时间内容内已经发送过一次验证码                                          |
| locked                | 验证码错误次数过多，手机号被锁定了，暂时不能使用该手机进行验证                      |
| confirmSigninTimeout  | 用户在正确输入账号密码后，还需要输入手机验证码时，因为session过期导致发送验证码失败 |
