微信网页开发,如何在H5页面中设置分享的标题,内容以及缩略图

摘要:
在需要调用JS接口的页面上导入以下JS文件,并通过config接口注入权限验证配置//生成签名随机字符串函数createNoncerStr(){constchars=[“a”.index++){constment=chars[randomNum(0;noncerStr+=element;wx.config({debug;所有调用的api的返回值将在客户端上发出警报,

前言

最近的需求是做一个移动端H5的长屏广告页,最后需要在微信分享的时候修改文案以及带上图片,这个实现起来也不是很复杂。

实现步骤

  1. 先绑定域名,先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。由于该自定义分享需要借助微信的jssdk来实现,所以这一步是必须的。
  2. 引入微信的jssdk,在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.6.0.js。
  3. 通过config接口注入权限验证配置,所有需要使用JS-SDK的页面必须先注入配置信息,否则将无法调用。
// 生成签名随机字符串
function createNoncerStr() {
    const chars = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z",
        "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"]
    var noncerStr = ""
    for (let index = 0; index < 16; index++) {
        const element = chars[randomNum(0, 51)];
        noncerStr += element;

    }
    return noncerStr
}
const nonceStr = createNoncerStr();
wx.config({
  debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
  appId: '公众号的id', // 必填,公众号的唯一标识
  timestamp: new Date().getTime(), // 必填,生成签名的时间戳
  nonceStr: nonceStr, // 必填,生成签名的随机串
  signature: sha1(`jsapi_ticket=${通过后台接口拿到的jsTicket,如何拿可以去看官网说明}&noncestr=${noncerStr}&timestamp=${timestamp}&url=${url}`),// 必填,签名,sha1方法可以直接引入第三方的js库,url通常为当前的url即window.location.href
  jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData',] // 必填,需要使用的JS接口列表,分享会用到这两个接口
});
  1. 配置自定义分享内容
      wx.ready(function () {   //需在用户可能点击分享按钮前就先调用
            // 自定义“分享给朋友”及“分享到QQ”按钮的分享内容(1.4.0)
            window.wx.updateAppMessageShareData({ 
                title: '标题', // 这是分享展示卡片的标题
                desc: '描述', // 分享描述
                link: '点进去的链接', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                imgUrl: '缩略图地址', // 分享图标
                success: function () {
                    // 设置成功
                }
            })
            // 自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容(1.4.0)这个是不支持加入描述的要注意一下
            window.wx.updateTimelineShareData({ 
                title: '标题', // 这是分享展示卡片的标题
                link: '点进去的链接', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                imgUrl: '缩略图地址', // 分享图标
                success: function () {
                    // 设置成功
                }
            })
        });
  1. 完成,开始测试。

小结

之所以写一下是之前在网上找的一篇博客明明都是错的,用了之后没反应也要发出来,误导人,浪费时间,所以将自己亲测可用的方法记下来

免责声明:文章转载自《微信网页开发,如何在H5页面中设置分享的标题,内容以及缩略图》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇linux 安装 Samba服务java基于xml配置的通用excel单表数据导入组件(一、实际应用过程)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Python使用pip安装matplotlib模块

matplotlib是python中强大的画图模块。 首先确保已经安装python,然后用pip来安装matplotlib模块。 进入到cmd窗口下,建议执行python -m pip install -U pip setuptools进行升级。 接着键入python -m pip install matplotlib进行自动的安装,系统会自动下载安装包...

微信小程序接口测试时appid为空如何解决

一、web接口测试和app/微信小程序接口测试的区别 web接口一般是通过浏览器访问,app接口是通过手机端访问的,所以他们header头部请求是不一样的,一样的就是User Agent这个参数。 web请求的header请求中的User Agent以谷歌为例: MAC:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_1...

spring cloud各个微服务之间如何相互调用(Feign、Feign带token访问服务接口)

1、首先先看什么是Feign。 这里引用“大漠知秋”的博文https://blog.csdn.net/wo18237095579/article/details/83343915 2、若其他服务的接口未做权限处理,参照上文第1点的博文即可。 3、若其他服务的接口做了权限的处理(例如OAuth 2)时该如何访问? a、有做权限处理的服务接口直接调用会造成调用...

用Socket开发的一枚小型实时通信App

Socket 英文原意是插座。 在网络世界里, 当一台主机温柔而体贴的同时提供多个服务时, 每个服务被绑定在一个端口上, 而每个端口就好像一个小插座。 用户们连接对应的插座去获取相应的服务。 在Node.js中,使用的是socket.io来实现Realtime的通信。 当程序两端实现数据通信时, 每一端便化身为一枚可爱的Socket了。 本示例使用Expr...

fiddler:快速标识接口

最近做了很火的直播答题,当然页面比较简陋,h5页面+http接口。 答题活动需要数据实时同步,即前端会高频重复的去调一些接口,使用fiddler抓包时,因为刷新速度过快,当接口出问题的时候,排查起来较慢。 此时对接口做个标记,会大大提高工作效率 使用fiddler的 autoresponder即可 此处写几个常用的,其中 添加注释文案、加粗非常好用 1 标...

项目实战中如何使用抽象类和接口

引子: 时常会有这么一个疑惑,抽象类和接口功能好像,真正用起来该如何抉择呢?? 好问题。。 来看看书上怎么说的(C#7.0本质论) 虽然方法可在基类中声明为抽象成员,但是!!如果都从一个基类派生,会用掉唯一的基类机会,(什么意思呢:也就是C#的单继承特性了),所以,什么都往基类里面加,就会显得特别臃肿,且不通用。 所以,原则就是:大共性你给我放基类,小共性...