Rumah > applet WeChat > pembangunan WeChat > 微信公众号里“JS接口域名”实现分享功能

微信公众号里“JS接口域名”实现分享功能

php是最好的语言
Lepaskan: 2018-08-08 09:28:30
asal
6676 orang telah melayarinya

1.准备工作

  APPID公众号id、申请好友分享接口、ip白名单、js接口安全域名设置(必须是通过备案)。要先登录微信公众平台进入“公众号设置”的功能设置里填写“JS接口域名”

2.引入js

注意:支持使用AMD/CMD标准加载方法

<script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
Salin selepas log masuk

3.通过config接口注入权限验证配置

所有需要使用JS-SDK的页面必须先注入配置信息,否则将无法调用(同一个url仅需要调用一次,对于变化url的SPA的web app可在每次url变化时进行调用,目前Android微信客户端不支持pushShate的H5新特性,所以使用pushState来实现web app的页面会导致签名失败,此问题在Android6.2修复)

wx.config({
  debug: true,         //开启调试模式,调用所有的api的返回值会在客户端alert出来,若要查看传入的参数,可以在PC端打印出来
  appId: &#39;&#39;,           //必填,公账号的唯一标识
  timestamp: &#39;&#39;,       //必填,生成签名的时间戳
  nonceStr: &#39;&#39;,        //必填,生成签名的随机串
  signature: &#39;&#39;,       //必填,签名
  jsApiList: [         //必填,需要使用js列表,否则无法分享成功
    &#39;onMenuShareTimeline&#39;,     //朋友圈
    &#39;onMenuShareAppMessage&#39;,   //朋友
    &#39;onMenuShareQQ&#39;,           //QQ
    &#39;onMenuShareWeibo&#39;,       //QQ空间
  ]
})
Salin selepas log masuk

4.通过ready接口处理成功验证

wx.ready(function(){
   //config信息验证后会执行ready方法,所有接口调用必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中
});
Salin selepas log masuk

5.通过error接口处理失败验证

wx.error({
  //config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名
});
Salin selepas log masuk

js代码

var data = {
  title: &#39;&#39;,
  summary: &#39;&#39;,
  pic: &#39;&#39;,
  url: &#39;&#39;,
  success: function(){
    getWeixin() ;//用户确认分享后执行的回调函数
  },
  cancel: function(){
    //用户取消分享后执行的回调函数
  }
}

wx.config({
  swapTitleInWX: true,
  appId: "<?php echo $weixin_package[&#39;appid&#39;];?>",
  timestamp: "<?php echo $weixin_package[&#39;timestamp&#39;];?>",
  nonceStr: "<?php echo $weixin_package[&#39;noncestr&#39;];?>",
  signature: "<?php echo $weixin_package[&#39;signature&#39;];?>",
  jsApiList: [
    &#39;onMenuShareTimeline&#39;,
    &#39;onMenuShareAppMessage&#39;,
    &#39;onMenuShareQQ&#39;,
    &#39;onMenuShareWeibo&#39;,
   ]
})

wx.ready(function () {
  wx.onMenuShareTimeline(data);
  wx.onMenuShareAppMessage(data);
  wx.onMenuShareQQ(data)
  wx.onMenuShareWeibo(data)
})
Salin selepas log masuk

注意点:

  1. title,建议在14个字以内

  2. 图片尺寸: 300*300像素;图片格式:大小不超过10kB,不支持GIF格式;会取当前页面body内最前面的一张符合条件的图片

  3. 对标题简要解读,建议20字以内

  4. link:'', //分享链接,改链接域名或路径必须与当前页面对应的公账号JS安全域名一致

二、QQ分享

QQ是通过head里面的标签来识别分享的图标和标题,涉及到h5微数据的一个属性itemprop,

<meta itemprop="name" content="标题"/>
<meta itemprop="description" name="description" content="描述"/>
<meta itemprop="image" content="缩列图地址"/>
Salin selepas log masuk

相关推荐:

微信公众号自定义分享内容实现

微信公众号授权设置,微信公众授权 

Atas ialah kandungan terperinci 微信公众号里“JS接口域名”实现分享功能. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan