admin管理员组

文章数量:1531451

在客户还未将公众号注册好时,开发者可以自己先申请一个测试号来开发,在发布后,修改 bug时也可以现在测试号上调试并修改好,再发布到正式版本

1.注册/登录
登录网址:https://mp.weixin.qq/debug/cgi-bin/sandbox?t=sandbox/login
如果没有账号,可以按照提示注册一个个人订阅号,注册不细说。
登录成功后,测试号信息appID和appsecret由平台自动分配;在api和h5使用这个测试号,后期发布正式版本的时候记得替换掉。
2.接口配置信息修改
目的:验证token;
URL:是发布到服务器上的api,会把Token值作为参数带过去验证。(api源码 稍后介绍)
Token:自定义,随便填写,只要跟后端api一致即可
Js接口安全域名:可以是域名,也可以是IP,但保证是公网,跟api放在同一个目录下即可。

3.验证Token的api(用c#为例)

 /// <summary>
 /// 验证测试token的有效性
 /// 验证token,此方法只有在使用微信公众号测试账号的时候使用
 /// </summary>
 /// <param name="signature"></param>
 /// <param name="timestamp"></param>
 /// <param name="nonce"></param>
 /// <param name="echostr"></param>
 /// <returns></returns>
 public ActionResult Valid(string signature, string timestamp, string nonce, string echostr)
 {
     string Token = "123456";
     if (CheckSignature(Token, signature, timestamp, nonce))
     {
         return Content(echostr);
     }
     else
     {
         return Content("failed:" + signature + "," + CheckSignature(Token, timestamp, nonce, Token) + "。如果你在浏览器中看到这句话,说明此地址可以被作为微信公众账号后台的Url,请注意保持Token一致。");
     }
 }
 public static bool CheckSignature(string token, string signature, string timestamp, string nonce)
 {
     string[] arrTmp = { token, timestamp, nonce };
     Array.Sort(arrTmp); //字典排序
     string tmpStr = string.Join("", arrTmp);
     tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1"); //对该字符串进行sha1加密
     tmpStr = tmpStr.ToLower(); //对字符串中的字母部分进行小写转换,非字母字符不作处理
     if (tmpStr == signature)
     {
         return true;
     }
     else
     {
         return false;
     }
 }

4.配置网页授权域名
可以将H5网页,发布后的api放在同一个iis站点下,直接给站点根目录的域名授权

本文标签: 公众测试教程