接入文档 V0.1.0

JS-SDK 签名

用到这些能力时才需要 JS-SDK:自定义分享卡片、图片选择、订阅消息授权开放标签。

域名名额

POST /api/v1/js/config

{ "url": "https://vip.onzx.cn/me" }
{ "ok": true, "data": {
  "appId": "wx…", "timestamp": 1760000000, "nonceStr": "…", "signature": "sha1…",
  "jsApiList": ["checkJsApi","updateAppMessageShareData","updateTimelineShareData","chooseImage","wx-open-subscribe"],
  "url": "https://vip.onzx.cn/me",
  "notice": "当前页面 URL 与签名 URL 必须逐字符一致…"
} }
签名 URL 必须与浏览器地址栏完全一致:含 query、不含 # 之后的片段。 安卓上 SPA 路由变化不会重新签名,这是 invalid signature 的头号成因 —— 单页应用请在每次进入需要 JS-SDK 的页面时重新取签名。

页面里怎么用

<script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>
<script>
fetch('/api/v1/js/config', { /* 站点服务端代理一层,别把密钥暴露到前端 */ })
  .then(r => r.json()).then(j => {
    wx.config({ debug: false, appId: j.data.appId, timestamp: j.data.timestamp,
      nonceStr: j.data.nonceStr, signature: j.data.signature,
      jsApiList: ['updateAppMessageShareData'], openTagList: ['wx-open-subscribe'] });
    wx.ready(function () {
      wx.updateAppMessageShareData({ title: '…', desc: '…', link: '…', imgUrl: '…' });
    });
    wx.error(function (e) { console.warn('wx.config 失败', e); });
  });
</script>

签名接口需要站点密钥,不能在前端直接调:请在站点服务端做一个转发路由(/site/jsconfig → 调中台 → 只回传 appId/timestamp/nonceStr/signature 四个字段)。

合规提醒

本页内容随代码一起版本化(V0.1.0)。发现文档与实际行为不一致,请当缺陷报告。