本帖最后由 qiqi8515 于 2022-9-29 16:32 编辑
特别鸣谢
精易模块作者方 精易科技
服务器文件编写软件商 红鸟PHP/小刀
调用的模块(精易模块)
ps:1、这个是用来干嘛的?
答:使用易语言编写的软件用户可以使用微信扫码登录或者注册
2、获取到的用户id(openid)是固定的嘛?
答:是的,是通过微信开放平台官方接口进行获取用户信息的openid是开放平台应用给用户的一个单独唯一的值。
3、怎么使用这个逻辑源码?
答:易语言需要【精易web浏览器支持库】(版主用的是1.7.903版本) 把以下代码复制到事件(_微信登录窗_URL被改变)
4、登录的逻辑是什么?
答:易语言内通过判断【精易web浏览器.url】是否变更(是否跳转至code_URL),通过获取code_URL内code内容后从服务器端获取用户固定id(即openid)。
ps:源码内 微信登录窗 为【精易web浏览器】大小随意
微信登录地址 = “输入你的微信登录地址”opid获取地址 = “输入你的微信openid获取域名地址”如果真 (微信登录窗. 取网页URL () ≠ 微信登录地址 ) 重定向含用户临时凭证code参数url = 微信登录窗. 取网页URL () 文本_取中间_批量 (重定向含用户临时凭证code参数url, “code=”, “&state”, 用户临时凭证code存放, , , , , , , )用户临时凭证CODE存放数组数 = 取数组成员数 (用户临时凭证code存放 )用户临时凭证CODE转译后明文 = 用户临时凭证code存放 [用户临时凭证CODE存放数组数 ] opid获取字节集 = 网页_访问 (opid获取地址 + 用户临时凭证CODE转译后明文, 10, , , , , , , , , , , , )opid获取返回明文 = 编码_Utf8到Ansi (opid获取字节集 ) 文本_取中间_批量 (opid获取返回明文, “openid” + #引号 + “:” + #引号, #引号 + “,” + #引号 + “scope”, opid存储数组, , , , , , , )opid存储数组数 = 取数组成员数 (opid存储数组 )opid明文 = opid存储数组 [opid存储数组数 ] 变量名 | 类 型 | 静态 | 数组 | 备 注 | 微信登录地址 | 文本型 | | | opid获取地址 | 文本型 | | | 重定向含用户临时凭证code参数url | 文本型 | | | 用户临时凭证code存放 | 文本型 | | 0 | 用户临时凭证CODE存放数组数 | 整数型 | | | 用户临时凭证CODE转译后明文 | 文本型 | | | opid获取字节集 | 字节集 | | | opid获取返回明文 | 文本型 | | | opid存储数组 | 文本型 | | 0 | opid存储数组数 | 整数型 | | | opid明文 | 文本型 | | |
[/e]
服务器文件.rar
(1.22 KB, 下载次数: 358)
|