当前位置:   article > 正文

uniapp微信公众号h5的分享好友和分享朋友圈

uniapp微信公众号h5的分享好友和分享朋友圈

效果图:

一、使用微信JS-SDK进行分享

1.安装模块依赖
npm install weixin-js-sdk --save
2.引入模块

mian.js引入并全局挂载

  1. // 引入微信js-sdk
  2. import wxjs from 'weixin-js-sdk'
  3. Vue.prototype.$wxjs = wxjs;
3.通过 config 接口注入权限验证配置(需要后端配合)
  1. getShare() {
  2. let _this = this;
  3. // js-sdk文档中规定,url的格式要求:
  4. // 确认url是页面完整的url(请在当前页面alert(location.href.split('#')[0])确认),包括'http(s): '部分,以及'?'后面的GET参数部分,但不包括'#'hash后面的部分
  5. var url = location.href.split('#')[0];
  6. // alert(url);
  7. uni.$u.http.post('/api/xxx/wxshareapi', {
  8. url: url,
  9. }).then(res => {
  10. uni.hideLoading();
  11. console.log("==获取分享配置==");
  12. console.log(res);
  13. var shareConfig = res.data;
  14. _this.$wxjs.config({
  15. debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
  16. appId: shareConfig.appid, // 必填,公众号的唯一标识
  17. timestamp: shareConfig.time, // 必填,生成签名的时间戳
  18. nonceStr: shareConfig.nonceStr, // 必填,生成签名的随机串
  19. signature: shareConfig.signature, // 必填,签名,见附录1
  20. // surl: res.data.surl, //自己添加的,debug为true的时候可以网页打印出对应的URL是否正确
  21. jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData']})
  22. _this.$wxjs.ready(() => {
  23. // 自定义“分享给朋友”及“分享到QQ”按钮的分享内容(1.4.0
  24. _this.$wxjs.updateAppMessageShareData({
  25. title: '', // 分享标题
  26. desc: '', // 分享描述
  27. // 该链接域名或路径必须与当前页面对应的公众号 JS 安全域名一致
  28. link: _this.$baseHref + '/pages/xxx/xxx',
  29. imgUrl: _this.userDetail.face_url, // 分享图标,只支持https
  30. success(res) {},
  31. cancel(res) {}
  32. })
  33. // 自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容(1.4.0
  34. _this.$wxjs.updateTimelineShareData({
  35. title: '', // 分享标题
  36. desc: '', // 分享描述
  37. // 该链接域名或路径必须与当前页面对应的公众号 JS 安全域名一致
  38. link: _this.$baseHref + '/pages/xxx/xxx',
  39. imgUrl: _this.userDetail.face_url, // 分享图标,只支持https
  40. success(res) {},
  41. cancel(res) {}
  42. })
  43. })
  44. }).catch(err => {
  45. console.log(err);
  46. })
  47. },

二、打开debug: true后,常见报错处理

1.报错config:fail,invalid signature

注意以下字段的参数是否正确。

 2.updateAppMessafeShareData:the permisiion

填写以下配置即可。

微信 JS 接口签名校验工具

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/658720
推荐阅读