uni-app H5分享朋友圈和好友

1.引入jssdk
npm install jweixin-module --save
2.在使用的页面引入并定义
var jweixin = require('jweixin-module')
3.使用

由于一开始一直报63002的错误,找不到原因,后面发现应该是url的问题;所以后端大佬让我把当前的地址传给后端,让后端处理。好像是为了跟微信请求的地址一致,返回的签名才有效。

getIndexData() {
    uni.request({
        url: app.appUrl + 'Index/index',
        method: 'GET',
        // 把当前的地址传给后台,后台拿着这个地址去请求微信返回签名
        data:{url:window.location.href},
        success: res => {
            if (res.data.status) {
                this.shareobj = res.data.jsapi;
                if(this.shareobj.url) {
                    this.shareurl() //调用分享方法
                }
            }
        }
    });
},
shareurl() {
    var that = this
    console.log(this.shareobj)
    var ppid 
    if(this.userinfo.id) {
        ppid = this.userinfo.id
    }else {
        ppid = ""
    }
    jweixin.config({
        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
        appId: this.shareobj.appId, // 必填,公众号的唯一标识
        timestamp: this.shareobj.timestamp, // 必填,生成签名的时间戳
        nonceStr: this.shareobj.nonceStr, // 必填,生成签名的随机串
        signature: this.shareobj.signature, // 必填,签名
         jsApiList: [
                    'checkJsApi',
                    'onMenuShareTimeline',
                    'onMenuShareAppMessage',
                ]
    });
    jweixin.ready(function () {

                //获取“分享给朋友”按钮点击状态及自定义分享内容接口(即将废弃)
        console.log(that.setting)
        jweixin.onMenuShareAppMessage({
            title: that.setting.title, // 分享标题
            desc: that.setting.intro, // 分享描述
            link: window.location.origin+'/pages/index/index?ppid='+ppid, // 分享链接
            imgUrl: that.setting.logo, // 分享图标
            type: '', // 分享类型,music、video或link,不填默认为link
            dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
            success: function () {

            }
        });
        jweixin.onMenuShareTimeline({
            title: that.setting.title, // 分享标题
            desc: that.setting.intro, // 分享描述
            link: window.location.origin+'/pages/index/index?ppid='+ppid, // 分享链接
            imgUrl: that.setting.logo, // 分享图标
            type: '', // 分享类型,music、video或link,不填默认为link
            dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
            success: function () {

            }
        });
    });

}

你可能感兴趣的:(前端,javascript,uni-app)