微信公众账号token验证失败解决办法

王朝学院·作者佚名  2016-08-28
窄屏简体版  字體:   |    |    |  超大  

问题:微信公众账号 开发过程中配置 token 提示 验证失败

如下图:

[flash=500,400]http://s1.knowsky.com/20160211/kato3h5rlky15.png[/flash]

[flash=500,400]http://s1.knowsky.com/20160211/z4u4wqdwg4d16.png[/flash]

点击修改配置:

[flash=500,400]http://s1.knowsky.com/20160211/2yu15o13boj16.png[/flash]

填写相关url与token(自定义):点击提交,会出现

[flash=500,400]http://s1.knowsky.com/20160211/hw1um0ntad216.png[/flash]

出现这种情况,主要是对相关参数不熟悉,要了解url与token的关系

url可以访问:页面中有Token的定义。url地址如:http://www.***.com/pay/wx_token.aspx

[flash=500,400]http://s1.knowsky.com/20160211/abvnfrcpwe516.png[/flash]

Token:根据说明自定义即可,要与url对应页面上的Token一致。

示例文件:

using System;

using System.Web.Security;

using System.Web.UI;

using WxPayAPI;

namespace Alipay

{

public partial class wx_token : Page

{

/// <summary>

/// 要与基本配置中的Token一致

/// </summary>

public string Token = "Token";PRotected void Page_Load(object sender, EventArgs e)

{

string echoStr = Request.QueryString["echoStr"];

Log.Debug("Token", "测试输出: echoStr = " + echoStr);

if ( CheckSignature() && !string.IsNullOrEmpty(echoStr))

{

Response.Write(echoStr);

Response.End();

}

}

/// <summary>

/// 验证微信签名

/// </summary>

/// * 将token、timestamp、nonce三个参数进行字典序排序

/// * 将三个参数字符串拼接成一个字符串进行sha1加密

/// * 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。

/// <returns></returns>

private bool CheckSignature()

{

string signature = Request.QueryString["signature"];

string timestamp = Request.QueryString["timestamp"];

string nonce = Request.QueryString["nonce"];

Log.Debug("Token", "测试输出: signature = " + signature);

Log.Debug("Token", "测试输出: timestamp = " + timestamp);

Log.Debug("Token", "测试输出: nonce = " + nonce);

string[] arrTmp = { Token, timestamp, nonce };

Array.Sort(arrTmp);

string tmpStr = string.Join("", arrTmp);

tmpStr = FormsAuthentication.HashPassWordForStoringInConfigFile(tmpStr, "SHA1");

if (tmpStr != null)

{

tmpStr = tmpStr.ToLower();

return tmpStr == signature;

}

return false;

}

}

}

示例文件中所用类库可以从公众号支付开发文档页面下载:https://pay.weixin.QQ.com/wiki/doc/api/jsapi_sl.php?chapter=11_1

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航