微信公众号,分享功能(朋友圈或朋友)
文章 1896 0 0 0
发布时间:2018年11月15日

概述

1、引入微信的js文件。

<script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>

2、通过ajax从后台获取必填字段。

appId: '', // 必填,公众号的唯一标识
timestamp: '', // 必填,生成签名的时间戳
nonceStr: '',// 必填,生成签名的随机串
signature:'',// 必填,签名

// 微信分享函数

    var signature = {};
    $.ajax({
        url:'http://mxp.chinacmcp.com/index.php?s=Postcard/Postcard/wecat&#39;,
        timeout: 10000, // 超时时间 10 秒
        type:'get',
        data: {
            url: window.location.href
        },
        async: false,
        cache:false,
        dataType: 'json',
        success: function (data) {
        console.log(data)        if(data.code==200) {
        console.log(data)
        signature = data.data;
        }
    },error: function (data) {
    }
    });
        wx.config({
            debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
            appId: signature.appid, // 必填,公众号的唯一标识
            timestamp: signature.timestamp, // 必填,生成签名的时间戳<?= $data['timestamp']?>
            nonceStr: signature.noncestr,// 必填,生成签名的随机串<?= $data['noncestr']?>
            signature: signature.signature,// 必填,签名<?= $data['signature']?>
            jsApiList: ['onMenuShareTimeline',
                        'onMenuShareAppMessage',
                        'onMenuShareQQ',
                        'onMenuShareWeibo',
                        'onMenuShareQZone']// 必填,需要使用的JS接口列表
        });
        wx.ready(function () {
            wx.checkJsApi({
                jsApiList: ['chooseImage'],
                // 需要检测的JS接口列表,所有JS接口列表见附录2,
                success: function(res) {
                    console.log(res);
                    // 以键值对的形式返回,可用的api值true,不可用为false
                    // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
                }
        });
        var shareUrl='http://mxp.chinacmcp.com/html';
        var obj = {//朋友圈
            title: shareUserPhone1+'给您的悄悄话', // 分享标题
            desc: '点击查看那些未曾对你说出口的话吧!', // 分享描述
            link: shareUrl, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
            // 该链接是重定向链接,因为需要获取用户code,但是该链接又无法直接写微信获取code的链接,
            // 所以需要点击后重新加载新的页面,来实现重定向,重新打开获取code的微信链接,实现获取用户信息的功能;
            imgUrl: 'http://mxp.chinacmcp.com/html/images/shareBack.png', // 分享图标
            fail: function (res) {
            alert(JSON.stringify(res));
            }
        };
        var obj1 = {//好友
            title: shareUserPhone1+'有些话,早就想对您说', // 分享标题
            desc: '点击查看那些未曾对你说出口的话吧!', // 分享描述
            link: shareUrl, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
            // 该链接是重定向链接,因为需要获取用户code,但是该链接又无法直接写微信获取code的链接,
            // 所以需要点击后重新加载新的页面,来实现重定向,重新打开获取code的微信链接,实现获取用户信息的功能;
            imgUrl: 'http://mxp.chinacmcp.com/html/images/shareBack.png', // 分享图标
            fail: function (res) {
                alert(JSON.stringify(res));
            }
        };

// 2.1 监听“分享给朋友”,按钮点击、自定义分享内容及分享结果接口
wx.onMenuShareAppMessage(obj1);
// 2.2 监听“分享到朋友圈”按钮点击、自定义分享内容及分享结果接口
wx.onMenuShareTimeline(obj);
// 2.3 监听“分享到QQ”按钮点击、自定义分享内容及分享结果接口
wx.onMenuShareQQ(obj);
// 2.4 监听“分享到微博”按钮点击、自定义分享内容及分享结果接口
wx.onMenuShareWeibo(obj);
// 2.5 监听“分享到QZone”按钮点击、自定义分享内容及分享接口
wx.onMenuShareQZone(obj);
});
评论专区