实现h5网页微信分享、朋友圈分享功能(微信右上角分享)

!!!!注: 

  1. 在公众号菜单中的链接打开并分享后才能显示正常图文;
  2. APP分享图文内容到微信好友时是图文,那打开该链接后分享的也是图文;
  3. 把链接换成二维码,扫码后进入分享也是图文。如果是用微信直接打开链接分享会是链接。

微信打开h5网页右上角分享功能需要前端和后台配合实现功能

后台工作: 根据微信网页开发文档撰写一个接口返回一个对象给前端, 以下为返回结果

{
    appId: '', // 公众号的唯一标识,需要注册公众号提供appid
    timestamp: '', // 生成签名的时间戳
    nonceStr: '', // 生成签名的随机串
    signature: '' // 签名
}

前端工作: 

1. 获取微信网页SDK

npm install jweixin-module -S

2. 引入SDK,并进行相关配置 

import wx from 'jweixin-module';

wxShareConfig({title, desc, link, imgUrl}){
    // 从后台异步获取的数据对象
    let data = {
        appId: '',
        timestamp: '',
        nonceStr: '',
        signature: ''
    }
    wx.config({
	  debug: true, // true 为测试版 可查看配置成功或失败的信息 正式使用时需要改为false
	  appId: data.appId, // 必填,公众号的唯一标识,需要注册公众号提供appid
	  timestamp: data.timestamp, // 必填,生成签名的时间戳
	  nonceStr: data.nonceStr, // 必填,生成签名的随机串
	  signature: data.signature,// 必填,签名,见附录1
	  jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 updateAppMessageShareData
	});
	wx.ready(()=>{
        // 分享到微信好友内容设置
		wx.updateAppMessageShareData({
			title, // 分享标题
			desc, // 分享内容的摘要
			link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
			imgUrl, // 分享图标
			success: function () {
                alert('设置成功, 设置成功之后, 在当前网页点击微信右上角分享时就是你设置的内容')
            },
            fail: function (reject) {
                alert(JSON.stringify(reject))
            }
		})
        // 分享到微信朋友圈的内容设置
		wx.updateTimelineShareData({
			title, // 分享标题
			link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
			imgUrl, // 分享图标
			success: function () {
                alert('设置成功, 设置成功之后, 在当前网页点击微信右上角分享时就是你设置的内容')
            },
            fail: function (reject) {
                alert(JSON.stringify(reject))
            }
		})
	})
}

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Vue H5中调用微信分享,首先需要引入微信官方的JS-SDK库。在Vue项目的index.html文件中,可以在<head>标签内添加如下代码: ```html <script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script> ``` 然后,在Vue组件的created生命周期钩子函数中,使用Vue的axios或者其他网络请求库向后端请求获取微信配置信息。 ```javascript created() { this.fetchWechatConfig(); }, methods: { async fetchWechatConfig() { const response = await axios.get('/api/wechat/config'); // 向后端请求微信配置信息 const { appId, timestamp, nonceStr, signature } = response.data; // 将配置信息存储到全局变量中 this.$store.commit('setWechatConfig', { appId, timestamp, nonceStr, signature }); this.initWechatSDK(); }, initWechatSDK() { const { appId, timestamp, nonceStr, signature } = this.$store.state.wechatConfig; wx.config({ appId, timestamp, nonceStr, signature, jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage'], // 配置需要使用的微信API }); // 进行微信SDK的初始化 wx.ready(() => { this.shareToWechat(); }); }, shareToWechat() { const shareData = { title: '分享标题', link: '分享链接', imgUrl: '分享图片链接', desc: '分享描述', }; // 配置分享的具体内容 wx.onMenuShareTimeline(shareData); // 分享朋友圈 wx.onMenuShareAppMessage(shareData); // 分享给好友 }, }, ``` 上述代码中,我们通过axios库向后端请求了微信配置信息,并将其存储到Vuex的全局状态中。然后,我们使用微信JS-SDK中的`wx.config`方法进行微信验证和初始化配置。一旦初始化成功,`wx.ready`回调函数将会被触发,我们在该函数中调用`shareToWechat`方法来配置分享的具体内容。 在`shareData`对象中,我们可以自定义分享的标题、链接、图片和描述等信息,然后使用`wx.onMenuShareTimeline`方法配置分享朋友圈的内容,使用`wx.onMenuShareAppMessage`方法配置分享给好友的内容。 最后,我们可以在Vue组件中调用`shareToWechat`方法来触发微信分享。 注意:在实际开发中,需要根据微信的API文档和后端提供的接口来进行相应的调整和配置。以上代码仅为示例,具体实现方式可能会有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值