微信分享优化

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30109365/article/details/82154306

js引入

< script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js"> < / script>

代码:

            //微信分享
            //请求微信权限认证
            function signatureJSSDK() {
             var url1 = window.location.href.split('#')[0];//后台需要此页面的url来生成参数
             $.ajax({
                 url:Url.getsign,//调用后台接口,用后台返回的结果来进行微信接口的基础配置(注意修改)
                 type:"POST",
                 dataType:"json",
                 data:{
                    url:url1
                 },
                 success:function (result) {

                     //后台接口调用成功,开始配置微信(注意参数修改)
                      wx.config({
                       debug : false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
                       appId : result.appId, // 必填,公众号的唯一标识
                       timestamp : result.timestamp, // 必填,生成签名的时间戳
                       nonceStr : result.nonceStr, // 必填,生成签名的随机串
                       signature : result.signature,// 必填,签名,见附录1
                       jsApiList : [// 必填,需要使用的JS接口列表,所有JS接口列表见附录2
                        /*
                            * 所有要调用的 API 都要加到这个列表中
                            */
                            "onMenuShareAppMessage",  //分享给朋友
                            "onMenuShareTimeline",  //到朋友圈
                            "onMenuShareQQ",       //qq
                            "onMenuShareWeibo",   //腾讯微博
                            "onMenuShareQZone",   //qq空间
                        ]
                      });

                 },
                 faile:function(error){
                     console.log(error)
                 }
             })
        };
        //请求微信权限认证
        signatureJSSDK();

        //config成功
        wx.ready(function() {
            var obj = {
                title: '心灵密友官网', // 分享标题
                desc: '在这里,和你分享人间百态,倾诉内心世界,分享不一样的故事,不一样的心情,心理咨询师一对一聆听心底心声,倾心点拨,理顺心理烦心事,呵护健康心灵', // 分享描述
                link: 'http://www.soulbuddy.cn', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                // 该链接是重定向链接,因为需要获取用户code,但是该链接又无法直接写微信获取code的链接,
                // 所以需要点击后重新加载新的页面,来实现重定向,重新打开获取code的微信链接,实现获取用户信息的功能;
                imgUrl:'https://resource.soulbuddy.cn/public/images/logo.jpg', // 分享图标
                success: function (res) {
                    console.log('已分享');    
                },
                fail: function (res) {
                    console.log(JSON.stringify(res));
                }
            };
            // 2.1 监听“分享给朋友”,按钮点击、自定义分享内容及分享结果接口
            wx.onMenuShareAppMessage(obj);

            // 2.2 监听“分享到朋友圈”按钮点击、自定义分享内容及分享结果接口
            wx.onMenuShareTimeline(obj);

            // 2.3 监听“分享到QQ”按钮点击、自定义分享内容及分享结果接口
            wx.onMenuShareQQ(obj);

            // 2.4 监听“分享到微博”按钮点击、自定义分享内容及分享结果接口
            wx.onMenuShareWeibo(obj);

            // 2.5 监听“分享到QZone”按钮点击、自定义分享内容及分享接口
            wx.onMenuShareQZone(obj);
        }); 
        wx.error(function(res){
            console.log(res);
            // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
        });

1.以上代码直接实现了分享朋友,朋友圈,QQ,微博,QQ空间等功能! 其他只需要注意,后台的请求接口和对应的参数,

注意在微信公众号中微信的js-sdk 方能使用!

2.代码到微信开发者工具里运行,可以在控制台清楚看到config获取了那些权限和功能

3.微信JS-SDK说明文档

猜你喜欢

转载自blog.csdn.net/qq_30109365/article/details/82154306