微信登录流程(uniapp app端和小程序端)

微信登录流程
 switch (uni.getSystemInfoSync().uniPlatform) {
            case "app":
                this.isApp = true;
                break;
            case "mp-weixin":
                this.isApp = false;
                break;
            default:
                console.debug("运行在开发者工具或其他平台");
                break;
        }

        if (this.isApp) {
            console.debug("走到这里111111");
            plus.oauth.getServices((services) => {
                let weixinAuthService = services.find((service) => {
                    console.debug("走到这里222222");
                    return service.id === "weixin";
                });

                console.debug("走到这里33333");
                weixinAuthService.login(
                    function (res) {
                        console.debug("走到这里444444");
                        console.debug(res.target.userInfo.openid, "授权成功");
                        let openId = res.target.userInfo.openid;
                        u.ui.tip(openId);
                    },
                    function (err) {
                        u.ui.tip("授权失败");
                        u.go(-1);
                        console.debug(err, "授权失败");
                    },
                );
            });

            // var weixinOauth = null;
            //         plus.oauth.getServices(
            //             function (services) {
            //                 for (var i in services) {
            //                     var service = services[i];
            //                     // 获取微信登录对象
            //                     if (service.id == "weixin") {
            //                         weixinOauth = service;
            //                         break;
            //                     }
            //                 }
            //                 weixinOauth.authorize(
            //                     function (event) {
            //                         const {code} = event;
            //                         let appid = "wx85df61a24c8d84c4";
            //                         let secret = "a031a2e25852dd692084c7a2a6d6a0d5";
            //                         let urlAddres = `https://api.weixin.qq.com/sns/oauth2/access_token?appid=${appid}&secret=${secret}&code=${code}&grant_type=authorization_code`;
            //                         uni.request({
            //                             url: urlAddres,
            //                             method: "GET",
            //                             success: (res) => {
            //                                 if (res.data && res.data.openid) {
            //                                     u.ui.tip(res.data.openid);
            //                                 } else {
            //                                     u.ui.tip("获取微信id失败");
            //                                 }
            //                             },
            //                             fail: (err) => {
            //                                 console.log(err, "slkdjlsjf");
            //                             },
            //                         });
            //                     },
            //                     function (err) {
            //                         // 登录授权失败
            //                         // err.code是错误码
            //                     },
            //                 );
            //             },
            //             function (err) {
            //                 // 获取 services 失败
            //             },
            //         );
        } else {
            uni.login({
                success: (res) => {
                    let code = res.code;
                    o("code", code);
                    u.fet("/auth/sc/xcxWxGetOpenId", {code: code}).then(
                        (res) => {
                            console.debug(res, "获取openId");
                            u.ui.tip(res.thirdId);
                        },
                    );
                },
                fail: (err) => {
                    u.ui.tip("授权失败");
                    u.go(-1);
                    console.debug(err, "获取openId失败");
                },
            });
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值