美文网首页
微信开发日记-引入微信JS-SDK

微信开发日记-引入微信JS-SDK

作者: 少年强则 | 来源:发表于2020-09-28 18:37 被阅读0次

微信开放文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html
一,HTML文件

1.新建HTML文件引入js文件


<script type="text/javascript" src='http://res.wx.qq.com/open/js/jweixin-1.6.0.js'></script>

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


<script>
 wx.config({
        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
        appId: appId, // 必填,公众号的唯一标识
        timestamp:timestamp, // 必填,生成签名的时间戳
        nonceStr: nonceStr, // 必填,生成签名的随机串
        signature: signature,// 必填,签名
        jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage'] // 必填,需要使用的JS接口列表
    });
</script>

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


<script>
 wx.config({
        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
        appId: appId, // 必填,公众号的唯一标识
        timestamp:timestamp, // 必填,生成签名的时间戳
        nonceStr: nonceStr, // 必填,生成签名的随机串
        signature: signature,// 必填,签名
        jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage'] // 必填,需要使用的JS接口列表
    });
//检查是否引入成功
wx.checkJsApi({
  jsApiList: ['chooseImage'], // 需要检测的JS接口列表,所有JS接口列表见附录2,
  success: function(res) {
  // 以键值对的形式返回,可用的api值true,不可用为false
  // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
  }
});
</script>
1601288992(1).jpg

4,进入该网页的域名,分享连接的域名,生成signature的URI的域名必须保持一致与该公众号的“公众号设置”的“功能设置”里填写“JS接口安全域名”保持一致。

二,PHP文件
PHP文件主要用来生成wx.config的参数
1,timestamp:时间戳 此时间戳与生成Signature时的时间戳保持一致
2,nonceStr:随机字符串(abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789)随机16位
3,signature:签名

jsapi_ticket=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg
noncestr=Wm3WZYTPz0wzccnW //随机字符串
timestamp=1414587457 //时间戳
url=http://mp.weixin.qq.com?params=value //当前页面的连接 

url 为当前页面的连接,不可以写死 必须动态获取

 $protocol    = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
        $url         = "$protocol$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

jsapi_ticket获取通过access_token 在此https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi 获取
注意jsapi_ticket过期时间为7200 秒 它与token为对应关系。

将以上四个参数按字典值排序(首字母ASCII码倒排)拼接

$url = 'jsapi_ticket=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg&noncestr=Wm3WZYTPz0wzccnW&timestamp=1414587457&url=http://mp.weixin.qq.com?params=value';
$signature = sha1($url);加密后

相关文章

网友评论

      本文标题:微信开发日记-引入微信JS-SDK

      本文链接:https://www.haomeiwen.com/subject/lncjuktx.html