获取微信登陆二维码(第二步)
# 获取微信登陆二维码(第二步)
**简要描述**:
- 获取登录二维码
- 注意,新建的应用需要设置分配的微信号数量, 默认是0, 可以根据需求分配数量,不要超过套餐最大数量限制。
- 该接口应该 设置超时 40秒左右
**请求URL**
- {APIURL}/wc/login/loginqr
**请求方式**
- POST
**请求头Headers:(别忘了传**)
- Content-Type:application/json
- **Access-Token:login接口返回**
**参数**
|参数名|必选|类型|说明|
|-|-|-|-|
|wcid|否|string|登陆会话id (==唯一id,首次扫码不需要传,历史扫码必须传!!!用来找上次登录设备的,记得保存数据库里; 如果多次不传,那么每次都是新设备登陆,就会造成被风控哦,务必注意⚠️==;wcid 传入必须还是得选择上次的节点,否则获取失败
|proxy_area_code|否|string|已开通BeiJ 北京; ShangH 上海; ChongQ 重庆; ShenZ 深圳; SuZ 苏州;ChengD 成都; HangZ 杭州;WuH 武汉; ShenY 沈阳等全国100多个地区具体参考 [获取支持代理区域(省市)](doc:L10cyQBO)|
|force_proxy_area|否|string|空:可以不使用当前区域, 1: 强制当前区域,不跨区,如果该区域无分配号了,那么将提示不允许获取二维码,严格解决异地风控|
|proxy_ip|否|string|代理IP+端口|
|proxy_user|否|string|代理IP平台账号|
|proxy_pwd|否|string|代理IP平台密码|
|root_new|否|string| 只针对新设备, 登陆未满3天的 突破发圈和首次掉线 ,1-提权: 获取二维码 必须给该设备目前在线;也就是在线后,还需要再扫描一次才可以;⚠️: 少部分设备不一定有效|
|client_ip|否|string| 用户端的ip, 可以在业务方服务器端获得proxy_area_code 优先级高于ip, 如果不设置 proxy_area_code 将使用ip 来自动匹配区域 |
|clientnet_url|否|string| 本地网络id(推荐),不掉线,过风控 (v2版本) ,v1 版本不传|
- proxy_area_code,proxy_ip 都不传递, 则将不使用代理
- proxy_area_code 都是在线使用,请大家最好先测试好代码再使用,不要频繁错误。
**路线选择**
- 1. 如果设置 proxy_ip 则会使用代理;这里使用的是s5代理, 所以s5端口要对应
- 2. 设置proxy_area_code,则会尽量选择该地域下的服务器,如果找不到,则会自动分配;
- 3. 如果proxy_area_code,proxy_ip 都设置了 那么综合2,最终也会使用代理
- 4. 如果得到平台或者私有提供了哪些区域代理。可用使用 [获取代理区域](doc:Y3VZbAbQ)
- 5. 私有代理的配置需要联系客服,把代理地址、账户、密码发送给客户,客服会把一些IP地址给您配置到白名单
- 6. 获取二维码偶尔返回失败,可能是第三方服务商IP不稳定导致,需重试获取即可。
返回数据:
|参数名|类型|说明|
|-|-|-|-|
|code|string|0成功,!0失败|
|msg|string|反馈信息|
|data|||
|wcid|string|会话id 第一次传 控 (==本值非固定的,每次重新登录会返回新的,数据库记得实时更新wcid)==|
|qr_data|string|base64格式的登陆二维码|
|expire|string|逾期截止时间(yyyy-MM-dd HH:mm:ss),一般5分钟之内|
请求参数示例
```
{
"wcid": "",
"force_proxy_area":"1"
}
{
"wcid": "1353626603531276288",
"force_proxy_area":"1"
}
```
成功返回示例
```
{
"msg": "success",
"code": 0,
"data": {
"expire": "2020-05-22 23:30:44",
"qr_data": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAV4AAAFeAQAAAADlUEq3AAAB6klEQVR42u3aPY7CMBAF4EEpKHMEjsLRyNE4CkegTBFl1vNjO2yiaBuP0eq5AcKXyvL4eRLiv4+FgIGBgYGBgb8Dv8nGLV25pN9PGmf5/Xj6Hw/geHzVj+eN5yF9Tunv60KkV2QAd8GLztct3bXWlaZXiC7AXbHOoK6vWQ3w9+D7a5yHVZcVcD+cax3LXQkTJay3nxRG4KY4p4I0lb6a/MtZhABuisuwDWgqte40bAM3xVbQZMj6SsuKef5M1MAdsFS2vO+U9WVTOexqHXAE1vmSvywelImb0k5kgQE4HGsqkCt1fdmc+pfPZQUch7UVw3rq5zRxvOZEvR73ZIADsNU6X1+WCugjHgAH42WTCvSAaRvQ3cIbcD8sCW3I+dmaM4e1DjgEkxnpJF/q+pIx8m4GgUOwTVzad0bfbl5E3r3UzAbcAXtUk16lZwDNbJITiI5TAXBrbA/CNKH5TjTOivm1r3XAMTinAn8iNmkfgLc5ATgc/+5e3vOhpjyXAQ7Htc+vJU6iGvtJ870vjMAxuJ5lfvf5S7sGOBzXtyy8z69PJ+1Qsy+MwJG4Pjv2WleLHnAv/M5Ny7oT0XD6khhwO7ztj1l+tmdkrDvRYZ8fuDHepAJ/tfXKJT+fRAjgdhivuwMDAwMDA/9L/APlYt92Ps6nMQAAAABJRU5ErkJggg==",
"wcid": "1396125131209707520"
}
}
```
错误返回示例
```
{
"msg": "调用失败",
"code": -1,
"data": null
}
```
**登录完整步骤**:
- 1.调用本接口得到二维码图片地址
- 2.微信扫码登录接口(此时接口不会返回,是根据用户是否扫码返回数据,最长等待100S)
- 3.开发者将本接口返回的二维码让用户去扫码
- 4.扫码结束后,方才的执行登录接口会自动返回登录成功或者登录失败
- 注意:请求所有接口需在**header包裹Access-Token(必须**)
- **==如果已超过最大数量,可以控制台检查为应用分配的端口数量==**