H5转发给朋友和分享朋友圈,在前端经常碰到,2021年9月微信又出新政策,不允许通过微信或者浏览器访问H5页面进行转发给朋友和分享到朋友圈。

下面把最新解决方法汇总一下,分享给大家,欢迎留言讨论。

目录

1.开发微信分享功能的正常全流程

2.微信分享官方资料

3.微信分享常见问题

4.微信分享3次实战开发,遇见的坑及解决方法汇总

4.1以前可以分享朋友圈和转发给朋友,现在不行了

4.2wx.config初始化失败

4.3分享接口没有权限

4.4有些环境可以正常分享朋友圈,有些服务器不行

5.分享效果

5.1不能分享朋友圈的效果

5.2能够分享朋友圈和转发朋友的效果

6.idea完整项目下载


1.开发微信分享功能的正常全流程

这里就不在累赘了,见我以前的一篇博客H5网页实现微信分享,分享朋友圈功能(分享带图片,附源码)_一火的专栏-CSDN博客_h5分享到微信朋友圈

2.微信分享官方资料

官网地址:概述 | 微信开放文档

即将废弃的分享接口,建议大家就别再调用了,使用红框框住的分享接口。

具体分享接口如下:

自定义“分享给朋友”及“分享到QQ”按钮的分享内容(1.4.0)

wx.ready(function () {   //需在用户可能点击分享按钮前就先调用wx.updateAppMessageShareData({ title: '', // 分享标题desc: '', // 分享描述link: '', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致imgUrl: '', // 分享图标success: function () {// 设置成功}})
});

自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容(1.4.0)

wx.ready(function () {      //需在用户可能点击分享按钮前就先调用wx.updateTimelineShareData({ title: '', // 分享标题link: '', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致imgUrl: '', // 分享图标success: function () {// 设置成功}})
});

3.微信分享常见问题

调用config 接口的时候传入参数 debug: true 可以开启debug模式,页面会alert出错误信息。以下为常见错误及解决方法:

  1. invalid url domain当前页面所在域名与使用的appid没有绑定,请确认正确填写绑定的域名,仅支持80(http)和443(https)两个端口,因此不需要填写端口号(一个appid可以绑定三个有效域名,见 ]目录1.1.1)。

  2. invalid signature签名错误。建议按如下顺序检查:

    1. 确认签名算法正确,可用微信 JS 接口签名校验工具 页面工具进行校验。

    2. 确认config中nonceStr(js中驼峰标准大写S), timestamp与用以签名中的对应noncestr, timestamp一致。

    3. 确认url是页面完整的url(请在当前页面alert(location.href.split('#')[0])确认),包括'http(s)://'部分,以及'?'后面的GET参数部分,但不包括'#'hash后面的部分。

    4. 确认 config 中的 appid 与用来获取 jsapi_ticket 的 appid 一致。

    5. 确保一定缓存access_token和jsapi_ticket。

    6. 确保你获取用来签名的url是动态获取的,动态页面可参见实例代码中php的实现方式。如果是html的静态页面在前端通过ajax将url传到后台签名,前端需要用js获取当前页面除去'#'hash部分的链接(可用location.href.split('#')[0]获取,而且需要encodeURIComponent),因为页面一旦分享,微信客户端会在你的链接末尾加入其它参数,如果不是动态获取当前链接,将导致分享后的页面签名失败。

  3. the permission value is offline verifying这个错误是因为config没有正确执行,或者是调用的JSAPI没有传入config的jsApiList参数中。建议按如下顺序检查:

    1. 确认config正确通过。

    2. 如果是在页面加载好时就调用了JSAPI,则必须写在wx.ready的回调中。

    3. 确认config的jsApiList参数包含了这个JSAPI。

  4. permission denied该公众号没有权限使用这个JSAPI,或者是调用的JSAPI没有传入config的jsApiList参数中(部分接口需要认证之后才能使用)。

  5. 为什么6.0.1版本config:ok,但是6.0.2版本之后不ok(因为6.0.2版本之前没有做权限验证,所以config都是ok,但这并不意味着你config中的签名是OK的,请在6.0.2检验是否生成正确的签名以保证config在高版本中也ok。)

  6. 服务上线之后无法获取jsapi_ticket,自己测试时没问题。(因为access_token和jsapi_ticket必须要在自己的服务器缓存,否则上线后会触发频率限制。请确保一定对token和ticket做缓存以减少2次服务器请求,不仅可以避免触发频率限制,还加快你们自己的服务速度。目前为了方便测试提供了1w的获取量,超过阀值后,服务将不再可用,请确保在服务上线前一定全局缓存access_token和jsapi_ticket,两者有效期均为7200秒,否则一旦上线触发频率限制,服务将不再可用)。

  7. 出现config:fail错误(这是由于传入的config参数不全导致,请确保传入正确的appId、timestamp、nonceStr、signature和需要使用的jsApiList)

  8. 绑定父级域名,是否其子域名也是可用的(是的,合法的子域名在绑定父域名之后是完全支持的)

  9. 在iOS微信6.1版本中,分享的图片外链不显示,只能显示公众号页面内链的图片或者微信服务器的图片,已在6.2中修复

  10. 是否需要对低版本自己做兼容(jssdk都是兼容低版本的,不需要第三方自己额外做更多工作,但有的接口是6.0.2新引入的,只有新版才可调用)

4.微信分享3次实战开发,遇见的坑及解决方法汇总

4.1以前可以分享朋友圈和转发给朋友,现在不行了

这个是由于微信官方在2021年9月份,做了调整,只能把H5页面加在公众号中(例如加到公众号菜单中)进行访问时,才可以分享朋友圈和转发给微信朋友。

4.2wx.config初始化失败

情况有很多种,主要如下:

1.Java后台前面的url与分享的url不一致,需要完全一致。例如后台是http,分享地址是https

2.参数不对

4.3分享接口没有权限

这错误有2种情况,1是参数不对;2是公众号中分享接口的状态为未获得。

4.4有些环境可以正常分享朋友圈,有些服务器不行

这种情况,一般是配置问题,跟代码没关系。配置主要有2处:

1.设置白名单

2.设置业务域名和js接口安全域名

5.分享效果

5.1不能分享朋友圈的效果

5.2能够分享朋友圈和转发朋友的效果

6.idea完整项目下载

基于jweixin-1.6.0.js最新版本,搭建springbootweb项目,实现微信分享,分享朋友圈,完整idea源码_H5网页实现微信分享功能-Java文档类资源-CSDN下载

前端必备技能~H5网页无法转发给朋友和分享朋友圈,解决方法汇总相关推荐

  1. css初始化样式文件_前端必备技能 webpack 4. webpack处理CSS资源

    每篇文章纯属个人经验观点,如有错误疏漏欢迎指正   因为 webpack 本身只具有识别 JS 的能力,所以涉及到其他资源,需要我们通过 loader 来进行特殊处理,针对不同的样式资源,需要以下几个 ...

  2. 如何解决html文档无法复制,职场必备技能:网页文档无法复制,3招教你轻松搞定...

    原标题:职场必备技能:网页文档无法复制,3招教你轻松搞定 其实很多人在浏览网页时都会遇到这个问题,看到了自己喜欢的文章片段,某一段文字特别符合自己的工作汇报,想要复制下来,结果却发现弹出了窗口,不是让 ...

  3. app内嵌h5页面在ios手机端滑动卡顿的解决方法

    app内嵌h5页面在ios手机端滑动卡顿的解决方法 参考文章: (1)app内嵌h5页面在ios手机端滑动卡顿的解决方法 (2)https://www.cnblogs.com/1rookie/p/11 ...

  4. C#爬网页时“远程服务器返回错误: (403) 已禁止”解决方法

    C#爬网页时"远程服务器返回错误: (403) 已禁止"解决方法 参考文章: (1)C#爬网页时"远程服务器返回错误: (403) 已禁止"解决方法 (2)ht ...

  5. 网易云网页端歌单只显示前20首解决方法

    网易云网页端歌单只显示前20首解决方法 现象说明 网易云网页端不给听完整的歌单了,只能听前20首,想听到歌单列表中的所有歌曲,怎么解决. 处理办法 用开发者工具将cookie的os改为pc即可解决. ...

  6. 微信小程序转发朋友与分享朋友圈

    转发给朋友 onShareAppMessage 分享朋友圈 onShareTimeline onShareAppMessage: function () {return {title: "标 ...

  7. 一张神图秒懂前端必备技能-我会5%

    相关资料: 思维导图:python字符串 思维导图:4张Python爬虫下载 思维导图:通关python列表 思维导图:git 思维导图:通关python字典 python标准库6张思维导图学明白 思 ...

  8. 微信公众号H5【微信网页授权快照页】复现情况,以及解决方法(详细,成功,forcePopup,forceSnapShot,is_snapshotuse)

    (上班时间写的!!,大哥们看完记得点赞) 1.官方回答(稀碎) 快照页将会默认对用户屏蔽网页授权弹窗,用户在快照页中仅可进行滑动浏览操作,其他交互将被限制,并提示用户 "该网页需获取个人信息 ...

  9. Win10QQ和QQ音乐可以正常使用,但网页无法打开,并报错DNS_PROBE_POSSIBLE的解决方法

    网页报错DNS_PROBE_POSSIBLE的解决方法 报错的图文如下:   之前遇到过这个问题,但没有细究,时间匆忙,于是换手机热点来上网,完美的错过了一次装逼成长的机会(笑哭).   今晚上,闲来 ...

最新文章

  1. 斯坦福抢开“元宇宙”第一课,上起来还真不便宜
  2. JSP,Servlet,JavaBean在WEB应用的角色
  3. java web 的标准目录结构(zz)
  4. java储存学生档案应该注意事项_档案管理的注意事项有哪些
  5. Markdown批量发布到Github
  6. 20211020 段院士全驱系统
  7. 焊接标注lisp文件下载_压力容器中焊缝的标注与对接,绝对专业
  8. 字符串匹配【模板】(luogu 3375)
  9. Jquery实现验证码功能 完美效果 jsp php 页面均可调用
  10. 【每日算法Day 61】LeetCode 672. 灯泡开关 Ⅱ
  11. python opencv人脸解锁_教你使用python+Opencv完成人脸解锁
  12. win7自带tftp服务器,如何打开tftp服务器,笔者教你Win7系统TFTP服务器怎么开启
  13. 2020年CVTE的Web前端开发在线笔试题
  14. git 拉取代码库的项目到本地(window系统)
  15. Java各种学习资源(视频+文档)
  16. 这样可以几分钟快速对接支付宝APP支付和手机网站支付
  17. Unable to load script code in VisualGuidance.The script will not be used until the error 的错误的解决方法
  18. 色域空间 sRGB Adobe RGB Pro Photo RGB
  19. 转载 javascript联动菜单
  20. 宇宙环境和演化过程统一建模方法——读《奇点临近》有感

热门文章

  1. mh服务器显示不了,《怪物猎人:世界》无法联机完美解决方法
  2. TortoiseSVN官网下载地址
  3. opencv轮廓分析
  4. Vue中作用域插槽solt详解
  5. IC公用电话私接居民家 网友称高手在民间(图)
  6. CI框架简单使用方法
  7. 惊奇吗?为什么这么多人喜欢使用蚂蚁花呗,而不是银行的信用卡的原因
  8. java中多线程之CAS(compareAndSet),Unsafe类大白话详解.
  9. 电脑系统缓存文件删除(temp文件夹)
  10. 微软移动 Nokia Lumia SensorCore SDK 介绍及上手体验