公众号第三方平台开发 教程六 代公众号使用JS SDK说明

时间:2024-01-03 21:46:50

公众号第三方平台开发 教程一 创建公众号第三方平台

公众号第三方平台开发 教程二 component_verify_ticket和accessToken的获取

公众号第三方平台开发 教程三 微信公众号授权第三方平台

公众号第三方平台开发 教程四 代公众号发起网页授权说明

公众号第三方平台开发 教程五 代公众号处理消息和事件

公众号第三方平台开发 教程六 代公众号使用JS SDK说明

另,感谢一下这个大虾的博客,这几篇东西都是在他的博文基础上完成的,他的博客里也有一些接口代码可以下载
微信开发系列教程

这一部分重点讲一下配置,其他的东西直接看官方文档就好了

公众号第三方平台开发 教程六 代公众号使用JS SDK说明

获取jsapi_ticket的函数

    /// <summary>
/// 获取jsapi_ticket
/// </summary>
/// <returns></returns>
private string GetTicket()
{
string ticket = string.Empty; Member_Model memberInfo = Member_BLL.GetModelByKeyFiled(memberID);
string token = memberInfo.authorizerAccessToken;
appID = memberInfo.authorizerAppid; //这里用的是服务方的PPID,不是公众号的APPID string result = Post("https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=" + token + "&type=jsapi", ""); JObject objResult = (JObject)JsonConvert.DeserializeObject(result); ticket = objResult.Value<string>("ticket"); return ticket;
}
signature的生成
    private void Bind()
{
WeiXinInterface.RefreshAndUpdateToken(memberID); //刷新服务方的token
timestamp = ConvertDateTimeInt(DateTime.Now).ToString(); //时间戳
noncestr = GenerateNoncestr(); //随机生成的字符串
ticket = GetTicket();
string url = "http://****/jspage.aspx?memberID=" + memberID;  //*号部分各位替换成自己的域名 string tempStr = string.Format("jsapi_ticket={0}&noncestr={1}&timestamp={2}&url={3}", ticket, noncestr, timestamp, url); LogTool.LogToDirDest(filePath, LogType.Debug, pageUrl + " 获取到的明文:" + tempStr); signature = System.Web.Security.FormsAuthentication.
HashPasswordForStoringInConfigFile(tempStr, "sha1").ToLower(); LogTool.LogToDirDest(filePath, LogType.Debug, pageUrl + " 获取到的signature:" + signature);
//Response.Write(testStr);
}

前台JS页面配置

公众号第三方平台开发 教程六 代公众号使用JS SDK说明