调用微信JS-SDK配置签名

前后端进行分开开发:

1:后端实现获取

  +++接口凭证:access_token (公众号的全局唯一接口调用凭据)

    ** GET 获取:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

  +++接口票据:jsapi_ticket ( JS-SDK 配置签名票据)

    ** GET获取:https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi

 

2:进行字典URL键值对的格式排序(即key1=value1&key2=value2…)拼接成字符串

(微信配置签名以)

详情:#附录1-JS-SDK使用权限签名算法 https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115 

 

后端实现了签名配置,前端调用后端提供的接口即可

注意:打开是在自己服务号配置好的域名形式打开:如 http://buy.shopline.com//html/index.html

在微信开发工具或是微信上,打开 便会提示 配置具体是否成功信息!

config:ok即表示完成配置,就可以调用 JS-SDK了,实现自己具体的想要的JS-SDK提供的接口!

/js/wxconfig.js

复制代码
    //配置 wx.config
    //这一步配置成功的

    $.ajax({
        url: '/config',
        type: 'GET',
        //必须进行 url 编码
        ////////////////////
        data: {
            url: location.href.split('#')[0]//@todo 重要:后台需要获取签名使用
        },
        dataType: 'json',
        success: function (res) {
            wx.config({
                beta: true,
                debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
                appId: res.appid, // 必填,公众号的唯一标识 wx4943f6480a79a436
                timestamp: res.timestamp, // 必填,生成签名的时间戳
                nonceStr: res.nonceStr, // 必填,生成签名的随机串
                signature: res.signature,// 必填,签名,见附录1
                jsApiList: ['chooseInvoice', 'chooseCard'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
            });
        }
    })
复制代码

 

//index.html

<script src="http://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
<script src="/js/wxconfig.js"></script>
<script>
  wx.ready(function () {
      //此处配置完成,根据自己需求进行接口是否配置完成调用
      //wx.ready 如 document.ready
  });
</script>

 

只要这一步,成功了!下面干正事......

posted @   expworld  阅读(365)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示