## 轮询二维码状态 ### 基本信息 | 属性 | 内容 | |:-----------|:---------------------------------| | 接口名称 | 轮询二维码状态 | | 接口版本 | v1.0 | | 接口路径 | /get/status/ | | 请求方法 | GET | | 接口状态 | 生产环境 | ### 接口说明 该接口用于长轮询设备二维码的扫码和授权状态。当二维码状态没有变化时,接口不会立即响应,直到请求超时或状态发生变化。 ### 接口地址 ``` https://qrcodeapi.115.com/get/status/ ``` ### 请求方式 ``` GET ``` ### 认证方式 ``` 设备码参数校验 ``` ### 请求参数 | 参数名 | 类型 | 必填 | 默认值 | 说明 | 约束/示例 | |:----|:-------|:---|:----|:------------------------------------|:------------------------| | uid | string | 是 | - | 二维码 ID/设备码,从 `/open/authDeviceCode` 的 `data.uid` 获取 | `DEVICE_CODE_PLACEHOLDER` | | time | int | 是 | - | 校验时间戳,从 `/open/authDeviceCode` 的 `data.time` 获取 | `0` | | sign | string | 是 | - | 校验签名,从 `/open/authDeviceCode` 的 `data.sign` 获取 | `SIGN_PLACEHOLDER` | ### 请求示例 ```shell curl -G 'https://qrcodeapi.115.com/get/status/' \ --data-urlencode 'uid=DEVICE_CODE_PLACEHOLDER' \ --data-urlencode 'time=0' \ --data-urlencode 'sign=SIGN_PLACEHOLDER' ``` ### 响应字段说明 | 字段 | 类型 | 描述 | |:------------|:-------|:-------------------------------------------| | state | int | 轮询状态:0-二维码无效,结束轮询;1-继续轮询 | | code | int | 错误码 | | message | string | 响应信息 | | data | object | 响应数据;115 客户端扫码或输入设备码后才有值 | | data.msg | string | 操作提示 | | data.status | int | 二维码状态:1-扫码成功,等待确认;2-确认登录或授权,结束轮询 | | data.version | string | 版本信息 | ### 响应示例 ```json { "state": 1, "code": 0, "message": "", "data": { "msg": "OPERATION_MESSAGE_PLACEHOLDER", "status": 1, "version": "VERSION_PLACEHOLDER" } } ``` ### 注意事项 - `state=0` 表示二维码无效,应结束轮询;`state=1` 表示继续轮询。 - `data.status=1` 表示扫码成功并等待用户确认;`data.status=2` 表示用户已确认登录或授权,应结束轮询并进入换取访问凭证的步骤。 - 长轮询超时不等同于授权失败,客户端可以按照自身网络策略重新发起请求。 ### 修改历史 | 修改时间 | 修改说明 | |:-----------------------------|:-----| | 2025年04月01日(周二) 00:00:00 | 创建文档 |