前几天做了一个H5页面项目,它是依托于微信服务号的网页.需要包含微信登录、微信支付以及微信订单查询功能; 在这里说一下先说一下微信登录授权功能的实现 微信登录授权 微信登录授权呢,分为静默授权和非静默授权;两个的区别是scope属性的属性值不同,scope= scopr_base是静默授权也就是不弹出页面,直接获取用户信息,scope=scope_userinfo是非静默授权,用户需要同意授权,然后通过获得的openid获取用户的昵称,性别,城市等信息...非静默授权在用户未关注公众号的情况下也可以使用,因此我比较青睐于这种方式,接下来给大家展示一下这个步骤 A. 获取微信公众号的APPID和APPSecret 获取APPID有两种方式,一种是公众号新建立,粉丝不太多,可能会直接使用公众号APPID,在开发->基本配置中的开发者ID中可以看到

但如果公众号粉丝较多,为了公众号的用户体验来说,可以使用测试账号, 开发者工具->测试账号

进行配合操作,就可以看到以下界面

B. 配置回调域名的界面
用户需要在JS接口安全域名中,配置一下安全域名,将提供的安全文件配置到服务器根目录下即可,但配置域名一定要注意是 www.XXX.com格式的,不要带http://头,带这个后期会出现redirect_uri参数不正确的情况
https://open.weixin..com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
var url = this.location.href; const suffixUrl = url.split("?")[1]; if (suffixUrl == null || suffixUrl == "" || suffixUrl == undefined) { var appID = "wx34b2beb43bf1a5a5"; var redirectUri = "http://www.muyi-nature.com/h5/user/saveOpenId"; // 授权接口地址 var strUrl = "https://open.weixin..com/connect/oauth2/authorize?appid=" + appID + "&redirect_uri=" + encodeURIComponent(redirectUri) + "&response_type=code&scope=snsapi_userinfo&state=STATE&connect_redirect=1#wechat_redirect"; window.location.href = strUrl; }
到这里,后端便已经可以根据code拿到用户的openid,再根据openid拿到用户的信息,就可以实现用户的微信登录了
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/217229.html原文链接:https://javaforall.net
