Spring学习笔记(二十三) | 您所在的位置:网站首页 › 怎么扫码获取健康码 › Spring学习笔记(二十三) |
微信扫码登录介绍 微信扫码登录是指微信OAuth3.0授权登录让微信用户使用微信身份安全登录第三方应用或网站,在微信用户授权登录已接入微信OAuth3.0的第三方应用后,第三方可以获取到用户的接口调用凭证(access_token),通过access_token可以进行微信开放平台授权关系接口调用,从而可实现获取微信用户基本开放信息和帮助用户实现基础开放功能等。 开发步骤第三方发起微信授权登录请求,微信用户允许授权第三方应用后,微信会拉起应用或重定向到第三方网站,并且带上授权临时票据code参数;通过code参数加上AppID和AppSecret等,通过API换取access_token;通过access_token进行接口调用,获取用户基本数据资源或帮助用户实现基本操作。微信扫码登录示例如进去下面的网站时 https://passport.yhd.com/wechat/login.do 需要微信进行授权登录 ![]() 当我们进行扫码登录后,服务器就可以通过微信开放平台获取登录用户的信息,达到对第三网站更为安全,更为人性化的体验。 微信开放文档地址链接:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html 具体微信提供给开发者的文档非常详细,具体可以参照开发文档进行操作。 遇到的问题使用微信开放平台必须注册一个微信开放平台账号 微信开放平台链接:https://open.weixin.qq.com/ 注册需要提供很详细的资料![]() 必须要提供已备案的域名网站,最后提交信息后会进行审核 如果需要使用微信开放平台,必须要进行开发者资质认证 这个是一个很麻烦的事情。![]() ![]() ![]() 接着又是填写一大堆资料,最后进行审核(1-3天,很麻烦) ![]() ![]() 但还是想吐槽微信开发不友好,每次新建一个项目或者申请都需要进行审核,有很大的被打回的风险,也很耗费时间,跟客服沟通经常联系不到,所以个人开发者真的比较困难。 使用第三方工具实现网站微信扫码登录开发前介绍本次要介绍的实现微信扫码登录的第三方工具叫做:码上登录 官网地址:http://login.vicy.cn/ 码上登录,是一个为各网站提供微信扫一扫登录能力的平台。 支持个人网站接入,无需企业认证, 使您的网站即刻拥有微信 [扫一扫] 登录能力! 在官网中有使用场景案例和功能介绍,可以自行查看 其中官网中最重要的一个东西:就是API文档啦 API文档:http://login.vicy.cn/apiWord.html 里面的介绍也比较详细,不过第一次使用也会有写困难,慢慢就熟悉了。 开发步骤首先使用微信登录码上登录官网,注册账号然后就可以直接创建应用了![]() 填写回调url的时候必须填写已备案域名的回调地址(下面细说) 接着打开API文档,试着请求接口请求地址:https://server01.vicy.cn/8lXdSX7FSMykbl9nFDWESdc6zfouSAEz/wxLogin/tempUserId?secretKey=xxxxxxxxxxxxxxxxxx(即我们创建应用时所生成的secretKey) 请求成功之后返回以下信息:![]() ![]() 特别注意:当我们写后台回调时,使用controller,并且创建RequestMapping(""),改请求的路径必须是你创建应用是填写的url 代码示例: 代码语言:javascript复制/** * @param response * @param map * @return 接收参数回调,是被回调的,第三方码上登录回调 */ @RequestMapping("/loginService") @ResponseBody public LoginResultVO loginService( HttpServletResponse response, @RequestParam Map map) { System.out.println(map); userMap = map; LoginResultVO loginResultVO = new LoginResultVO(); //System.out.println("我被调用了"); loginResultVO.setErrcode(0); loginResultVO.setMessage("成功"); return loginResultVO; }项目创建的示例: ![]() 5. 是很重要的一步:当开发服务器接收到码上登录服务器发送的请求拿到数据时,开发者服务器需要向“码上登录”服务器返回一个是否登录成功的状态码。 ![]() 返回数据类型有两个字段,返回 0 和 “成功” 即可。 当完成以上5个步骤后,一次微信扫码授权登录的过程才真正完成,也就是开发者服务器真正成功拿到了登录用户的信息数据。 微信扫码登录获取微信用户信息Demo实现流程实现效果登录界面![]() * 手机端 ![]() ![]() * 后台拿到数据 ![]() ![]() * 二维码生成包 代码语言:javascript复制 创建二维码示例代码语言:javascript复制 |
CopyRight 2018-2019 实验室设备网 版权所有 |