企业微信扫码登录

请求url
可以看到如下结果:
在这里插入图片描述
请求的URL是 reqauth.aspx,这是发起认证的第一步,这个请求的返回结果是一个 XML 数据,包含一个 ReqID,用户授权的地址 AuthUrl 以及查询结果的地址 ResultUrl。

如果直接访问这个地址,会提示缺少参数。
在这里插入图片描述
加上参数ReqID=22848904
在这里插入图片描述
加上请求数据
在这里插入图片描述
因此完整的结果查询url要加上?ReqID=22848904&ReqData={ReqData}。

同时可以看见,第一次请求的结果是xml格式,第二次是json格式。

我的思路如下:

  1. 通过http发送Get请求。
  2. 用NativeXML解析出其中的AuthUrl和ResultUrl。
  3. 将AuthUrl用IBarCode2D转换为二维码显示在界面上待用户扫码验证。
  4. 最后用ResultUrl拼接上?ReqID=22848904&ReqData={ReqData}得到查询授权结果的url。
  5. 在定时器中不断通过http发送Get请求给ResultUrl,通过SuperObject解析其中的errmsg,如果为’ok.',那么解析UserId,将结果显示在界面中。

总结:通过HTTP请求获取认证ID、生成二维码、等待用户授权、并轮询查询结果。

在这里插入图片描述

在这里插入图片描述

设计:
在这里插入图片描述
初始化:
在这里插入图片描述
在这里插入图片描述
解析xml:
在这里插入图片描述
定时器轮询查看授权结果:
在这里插入图片描述
解析json中的errmsg:
在这里插入图片描述
另一个刷新二维码的定时器:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值