Senparc.Weixin JSSDK获取signature签名

第一步: 在NuGet 管理获取 Senparc.XXX 相关接口

Senparc.Weixin JSSDK获取signature签名Senparc.Weixin JSSDK获取signature签名

第二步:在使用Senparc.Weixin SDK 或者 CO2NET,需要对扩展缓存策略进行注册。

参考:https://www.cnblogs.com/szw/p/9265828.html

a.  将Senparc.Weixin 升级到最新版本,我的是6.6.104.1

Senparc.Weixin JSSDK获取signature签名Senparc.Weixin JSSDK获取signature签名

b.在g;obal.asas.cs 文件中的Application_Start() 方法没加入下面代码:

  protected void Application_Start()
        {
           .....

            var isGLobalDebug = true;//设置全局 Debug 状态
            var senparcSetting = SenparcSetting.BuildFromWebConfig(isGLobalDebug);
            var register = RegisterService.Start(senparcSetting).UseSenparcGlobal();//CO2NET全局注册,必须!

            var isWeixinDebug = true;//设置微信 Debug 状态
            var senparcWeixinSetting = SenparcWeixinSetting.BuildFromWebConfig(isWeixinDebug);
            register.UseSenparcWeixin(senparcWeixinSetting, senparcSetting);////微信全局注册,必须
        }

用到的using

using Senparc.CO2NET;
using Senparc.CO2NET.RegisterServices;
using Senparc.Weixin;
using Senparc.Weixin.Entities;

第三步:获取时间戳timestamp ,随机码nonceStr,jsapi_ticket,以及签名signature。

注意:

 /*
  * 获取微信公众号signature需要有三个参数:appId、appsecret、url
  * url则是前台传过来的当前页面的地址值
  */

var timestamp = JSSDKHelper.GetTimestamp();  
var nonceStr = JSSDKHelper.GetNoncestr();
string jsapi_ticket = JsApiTicketContainer.TryGetJsApiTicket(appId, appsecret);
string strurl = url;
var signature = JSSDKHelper.GetSignature(jsapi_ticket, nonceStr, timestamp, strurl);

验证生成的签名是否正确:

https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign

 

参考及相关链接:

https://www.cnblogs.com/szw/p/3764267.html

https://blog.csdn.net/wang_97/article/details/91991954

http://weixin.uucony.com/html/m_senparc_weixin_mp_containers_jsapiticketcontainer_trygetjsapiticketasync.htm

https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#62

上一篇:SpringCloud : 接入 微信公众号平台(三)、获取JsSDK配置参数


下一篇:java版--微信jssdk 授权config接口注入权限验证配置的参数获取+全局缓存access_token和jsapi_ticket