微信公众号网页分享设置及问题

article/2025/9/21 23:57:56

准备工作

1.微信公众号、获取appId、secret;

2.在公众号后台填写JS接口安全域名和IP白名单;

后台工作

请求微信接口并给前端返回noncestr(生成签名的随机串)、timestamp(生成签名的时间戳)、signature(签名),获取方式文档中描述的很清楚,这里就不在赘述了。

微信开放文档微信开发者平台文档https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_access_token.html

前端工作

一、安装

引入JS文件:http://res.wx.qq.com/open/js/jweixin-1.6.0.js

或者

npm安装:

npm install weixin-js-sdk --save

二、引入

import Wx from 'weixin-js-sdk';

三、通过config接口注入权限验证配置

shareConfig是通过后台接口获取的;Wx.config是异步方法,如果紧跟着写分享配置需要放到wx.ready中;

Wx.config({debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。appId: '**********', // 必填,公众号的唯一标识timestamp: shareConfig.timestamp, // 必填,生成签名的时间戳nonceStr: shareConfig.noncestr, // 必填,生成签名的随机串signature: shareConfig.signature,// 必填,签名,见附录1jsApiList: ['updateTimelineShareData', 'updateAppMessageShareData', 'onMenuShareAppMessage', 'onMenuShareTimeline'], // 必填,需要使用的JS接口列表,所有JS接口列表见附录2// 这里后面两个接口是即将废弃的,但是我看微信开放文档写的,如果是低版本的微信可能不支持前面两个新的分享方法,所以就都加上了
});

四、分享配置

let shareConfig = {title: '', // 标题desc: '', // 描述link: '', // 分享链接imgUrl: '', // 图片地址success: function (res) {console.log(res, '成功');},cancel: function (err) {console.log(err, '失败');}
};Wx.ready(function () {// 自定义“分享给朋友”及“分享到QQ”按钮的分享内容Wx.updateAppMessageShareData(shareConfig);// 自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容Wx.updateTimelineShareData(shareConfig);Wx.onMenuShareAppMessage(shareConfig);Wx.onMenuShareTimeline(shareConfig);});

调试

问题1:errMsg: "config:ok",jsApiList为空

 

如果出现这两个报错可以查看:

从微信开发者工具中 点击左上角按钮  微信开发者工具 - 调试 - 调试微信开发者工具,点击刷新页面(有些问题在微信开发者工具看不到,但是在这里可以看到)

点击Network 查看 https://servicewechat.com/wxa-dev-logic/preverify  这个请求的返回数据,例如:

 这个就是url不合法,如果是线上环境就查看下JS接口安全域名是否配置正确,本地调试可以通过配置hosts文件,使用域名访问。本地IP地址使用域名访问_晓_枫的博客-CSDN博客

 签名错误,和后台沟通修改,签名校验:微信 JS 接口签名校验工具

在微信开发者工具上测试微信分享都可以的,但是在真机上没办法使用?

这是微信开放全域名后做的限制,从公众号菜单进入、将链接生成二维码后访问、将链接添加到我的收藏,从收藏里访问,这几种方法进入访问分享时可以的。


http://chatgpt.dhexx.cn/article/jRl8I9S5.shtml

相关文章

微信公众号分享签名sign获取

微信 JS 接口签名校验工具 http://mp.weixin.qq.com/debug/cgi-bin/sandbox?tjsapisign 后台代码: /*** 分享的参数* author LHB* since JDK 1.8*/ResponseBodyRequestMapping(value "/getShareParam")public ResultOutDto getShareParam(HttpServl…

php微信转发无法显示标题图片,解决微信公众号分享朋友圈不显示标题图片描述的方法...

我在微信开发者工具调试都是正确,为什么在真机进行测试,就不会显示分享标题图片描述语呢。 检查分享相关微信接口也是正确,代码如下: wx.ready(function () { wx.onMenuShareTimeline({ title: ".$c_title.", desc:&q…

微信公众号分享外部链接踩到的坑,具体说一说

公众号中嵌入h5html链接,分享自定义小卡片踩坑指南~~ 对接成功后,wx.onMenuShareAppMessage,onMenuShareTimeline方法调用时,自定义的标题、描述内容、link是在调用wx.config的时候就生成了,不是在点击分享时才生成的,…

微信分享次数统计、微信公众号分享关注统计

作为系列文章的第五篇,本文重点探讨数据采集层中的微信分享追踪系统。微信分享,早已成为移动互联网运营的主要方向之一,以Web H5页面(下面称之为微信海报)为载体,利用微信庞大的好友关系进行传播&#xff0…

微信公众号分享配置无效。。分享出来的只是纯链接了,如何自定义微信公众号的分享

微信公众号分享配置无效。。分享出来的只是纯链接了 挺久没接微信公众号的项目开发了,最近突然接了一个,结果微信自定义分享给我整懵了。原本配置的好好的,屡试不爽的代码,居然死活不生效,开启debug,开发者…

android开发中微信公众号功能,微信公众号分享与收藏开发文档(Android应用)

微信分享及收藏是指第三方App通过接入该功能,让用户可以从App分享文字、图片、音乐、视频、网页至微信好友会话、朋友圈或添加到微信收藏。 微信分享及收藏功能已向全体开发者开放,开发者在微信开放平台帐号下申请App并通过审核后,即可获得微…

微信公众号自定义分享

效果图: 1、登录微信公众号(需要已经认证过的公众号) 进入“设置与开发”→“公众号设置”→“功能设置”→“JS接口安全域名”,将文件下载下来,上传至与将要分享的页面相同的域名服务器中,上传成功后再在下…

缓存和CPU和内存和磁盘的关系

在选购CPU总听人说缓存,一级缓存,二级缓存,三级缓存但是这个缓存到底是什么,有什么作用,他与内存到底有什么关系,我们今天就来探讨一下,我主要目的是学习,写文章也是让学习更深入&am…

Hadoop性能调优、YARN的内存和CPU配置

转: https://blog.csdn.net/dehu_zhou/article/details/52808752 https://blog.csdn.net/dxl342/article/details/52840455 Hadoop为用户作业提供了多种可配置的参数,以允许用户根据作业特点调整这些参数值使作业运行效率达到最优。 一 应用程序编写…

你还不懂硬盘,内存和CPU的关系 ?(程序员入门)

你好我是辰兮,很高兴你能来阅读,本篇文章小结了硬盘,内存和CPU的关系,献给初学者,分享获取新知,大家共同进步。 文章目录 一、硬盘内存CPU图二、硬盘讲解三、内存的简介四、拓展A盘和B盘 一、硬盘内存CPU图…

CPU 与 内存之间的三级缓存的实现原理

一. CPU 与 Memory 内存之间的三级缓存的实现原理 1.1 cache 存在的原理 引入 Cache 的理论基础是程序局部性原理,包括时间局部性和空间局部性。时间局部性原理即最近被CPU访问的数据,短期内CPU 还要访问(时间)&#…

一、CPU、内存、硬盘之间的关系

本人坚持更新C语言和数据结构知识,可以收藏+关注随时了解😜😜😜 目录 三者关系 其实内存在这里起了两个作用: 总结 三者关系 当我们在计算机上执行一个程序时,首先由输入设备向CPU发出操作指…

计算机内存怎么与频率匹配,怎么算cpu与内存频率匹配

2018-03-02 在286、386和早期的486电脑里,CPU的速度不是太高,和内存保持一样的速度。后来随着CPU速度的飞速提升,内存由于电气结构关系,无法象CPU那样提升很高的速度(就算现在内存达到400、533,但跟CPU的几个G的速度相…

CPU/内存/缓存

1、CPU 和各级缓存、内存、硬盘之间的关系 为什么会出现多级缓存呢? 说的简单一点因为 CPU 的频率太快了,而若是没有缓存,直接读取内存中的数据又太慢了,我们不想让 CPU 停下来等待,所以加入了一层读取速度大于内存但…

【高频内存与主板内存频率和CPU内存频率之间的关系】

很多小白经常问我说我的CPU标着内存频率支持2400啊,那我买3200是不是浪费了,还有的说我主板内存最高支持4000啊,那我是不是要买4000的内存啊。总之小白们都不清楚高频内存的频率到底是由谁决定的,又由谁限制,高频的性能…

汇编:CPU与内存的读写关系

要想学好汇编语言,首先要对CPU等硬件结构有一定的了解。 软件\程序的执行过程: 最为关键的是需要了解CPU和内存 在学习汇编语言过程中,遇到的绝大部分指令都是跟内存、CPU有关的 文章目录 1、CPU总线2、CPU内存3、8086CPU的寻址方式4、CPU内…

显卡内存和计算机内存,显存和内存的关系和区别

显存和内存是什么关系?显存和内存有什么区别?接下来我们来讨论一下。通常说到显存和内存的时候,还会说一下缓存、存储,我们一起介绍一下。 1、显存 即显卡内存,也叫帧缓存,是用来存储显卡芯片处理过或者即将提取的渲染数据。直白点就是存储图形信息的东东。 像我们平时在…

Linux查看CPU和内存使用情况

top命令 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。 运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 – 用基于 top 的命令&#xff0…

CPU、内存、硬盘和主板的关系

一、内存 内存的正式叫法是内存储器,以此来与外存储器区分开。物理上它安装在计算机内部,通常安装在主板上,所以称为内存。 一般情况下我们将8个元器件看做一个单位,即使表示很小的数, 例如 1,也需要8个&…

对cpu和内存的简单理解

对cpu和内存的简单理解 1.前端总线: cpu利用总线来跟内存,硬盘,输入输出设备等进行数据交流 总线:总线就是一根根导线的集合 总线的种类: 数据(进行传输的数据),地址(地址进行寻址操作),控制总线(控制读写操作) 地址总线: 地址总线的宽度决定cpu的寻址能力,单次能寻找地址…