一定要避坑:关于微信H5分享,温馨提示你不要再踩坑了!!!

项目背景

  • 在上次的业务需求需要我们开发一个商品 H5 页面。这个页面需要在微信中打开,并且能够以卡片式的形式分享到微信好友,而不仅仅是纯链接的形式。
    [图片上传失败...(image-f0e6da-1712130027739)]

遇到的问题

  • 在开发过程中,我们遇到了一些问题。我们按照之前的经验,接入了微信 JSDK,并执行了个性化分享配置。然而,当我们换了商品 id 后,发现在 iOS 和 Android 上收藏的数量不一致,有时候第二个卡片甚至没有分享图片和标题。

  • 到这里,先抛出遇到的两个问题:

    1. 当换了商品 id 后,发现在 iOS 和 Android 上收藏的分享卡片数量不一致问题。
    2. 分享给朋友时,分享卡片配置的分享图片,标题以及描述没有生效问题。

解决过程

  • 第一个问题:

    1. 检查是否与 hash 模式路由有关系。❌
      • 我换了 history 模式路由,问题依旧存在,所以排除。
    2. 检查是否在同一个域名下不同参数只能收藏为一个。❌
      • 我用 test 环境,在安卓下复现,发现两个参数可以收藏为两个不同的分享卡片,所以排除。


        h5分享-1.png
3. 检查是否是微信版本问题,反复确认后,发现是微信版本问题。
4. 确认分享的 link 链接是否正确,反复确认后是对的。❌
5. 检查是否是微信版本问题,用测试机换了不同微信版本,也没有问题。❌
6. 检查是否是两个链接收藏为同一个的问题,并不是,两个链接会产生两个分享卡片。❌
7. 尝试用两个域名来收藏,看是否会有两个收藏记录。
    - 发布了两个不同域名,验证后,会存在两个分享卡片。这个解决方法也存在潜在问题,如果后续存在 100 多个甚至更多,那岂不是要很多个域名。❌
  • 第二个问题:
    1. 检查是否与 JSDK 初始化的先后顺序有关系。❌
      • 我用了了 vue 中的 eventBus 来解决,先让 JSDK 初始化,再执行 配置分享的中的方法,问题依旧存在。
    2. 打开初始化 JSDK 的 debug 模式,一步一步调试,最后发现也没有问题。❌

解决方案

  • 第一个问题:
    • 经过多次测试和查找资料,我们发现了问题的根源:window.location.origin 存在兼容性问题。我们根据这个发现,修改了我们的链接生成方式:
link: `${location.protocol}//${location.host}${location.pathname}/index.html?id=${this.$route.query.id}`;
  • 第二个问题:
    • 先从二维码中打开,然后再收藏分享(这个步骤只需要做一次,后续会一直生效)

总结

  • 注意事项:
  1. 在使用 JSDK 之前,确保先进行初始化成功后再进行分享配置。
  2. 在定制分享配置时,避免使用 window.location.origin 生成链接,而是使用下述提到的方法来生成,(盲猜,可能是 IOS 和 Android 兼容性问题)
link: `${location.protocol}//${location.host}${location.pathname}/index.html?id=${this.$route.query.id}`;
  1. 需要注意的是,H5 分享与网页的 hash 或 history 模式无关。
  • 解决方案
    1. 可以考虑使用二维码来打开链接,然后进行收藏和分享以确保生效。✅
    2. 从公众号菜单中的链接打开或从气泡链接进入,同样可以生效。✅
    3. 可先将链接收藏到微信,然后从微信收藏中进入再进行分享。✅
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,902评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,037评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,978评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,867评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,763评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,104评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,565评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,236评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,379评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,313评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,363评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,034评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,637评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,719评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,952评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,371评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,948评论 2 341

推荐阅读更多精彩内容