微信企业号开发 echostr校验失败,请您检查是否正确解密并输出明文echostr

asia_zy 2015-02-10 07:25:19
微信企业号,开启回调模式时做URL配置出现的问题,代码是根据官网文档写的,不清楚到底要怎么个解密才可以,在线求解答?
...全文
29966 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
mainland2008 2017-10-05
  • 打赏
  • 举报
回复
..........问题
mmb207 2016-07-22
  • 打赏
  • 举报
回复
我看了我的问题和代码都和你一样,研究了几天了没有出路,能帮帮忙告诉一下到底是哪里的问题吗?谢谢了
qq_35059774 2016-06-30
  • 打赏
  • 举报
回复
谁快点帮忙解决啊
qq_35059774 2016-06-30
  • 打赏
  • 举报
回复
echostr校验失败,请您检查是否正确解密并输出明文echostr
alotofshit 2016-04-06
  • 打赏
  • 举报
回复
首先感谢楼主提供的链接 下面贴出我参考链接改的代码(c#),已测试通过,供大家参考 using System; using System.Collections.Generic; using System.Configuration; using System.IO; using System.Linq; using System.Text; using System.Web; using Tencent; namespace WeixinTest { /// <summary> /// Auth 的摘要说明 /// </summary> public class Auth : IHttpHandler { public void ProcessRequest(HttpContext context) { //context.Response.ContentType = "text/plain"; //context.Response.Write("Hello World"); //string postString = string.Empty; if (HttpContext.Current.Request.HttpMethod.ToUpper() != "GET") { } else { auth(); } } private void auth() { #region 获取关键参数 string token = ConfigurationManager.AppSettings["CorpToken"];//从配置文件获取Token string encodingAESKey = ConfigurationManager.AppSettings["EncodingAESKey"];//从配置文件获取EncodingAESKey string corpId = ConfigurationManager.AppSettings["CorpId"];//从配置文件获取corpId #endregion string echoString = HttpContext.Current.Request.QueryString["echoStr"]; string signature = HttpContext.Current.Request.QueryString["msg_signature"];//企业号的 msg_signature string timestamp = HttpContext.Current.Request.QueryString["timestamp"]; string nonce = HttpContext.Current.Request.QueryString["nonce"]; System.IO.File.WriteAllText(HttpContext.Current.Server.MapPath("/") + "a.txt", echoString + "," + signature + "," + timestamp + "," + nonce); string decryptEchoString = ""; if (CheckSignature(token, signature, timestamp, nonce, corpId, encodingAESKey, echoString, ref decryptEchoString)) { if (!string.IsNullOrEmpty(decryptEchoString)) { HttpContext.Current.Response.Write(decryptEchoString); HttpContext.Current.Response.End(); } } } public bool IsReusable { get { return false; } } public bool CheckSignature(string token, string signature, string timestamp, string nonce, string corpId, string encodingAESKey, string echostr, ref string retEchostr) { WXBizMsgCrypt wxcpt = new WXBizMsgCrypt(token, encodingAESKey, corpId); int result = wxcpt.VerifyURL(signature, timestamp, nonce, echostr, ref retEchostr); if (result != 0) { //LogTextHelper.Error("ERR: VerifyURL fail, ret: " + result); return false; } return true; //ret==0表示验证成功,retEchostr参数表示明文,用户需要将retEchostr作为get请求的返回参数,返回给企业号。 // HttpUtils.SetResponse(retEchostr); } } }
smooth2015 2016-03-17
  • 打赏
  • 举报
回复
谢谢楼主焚香的链接有用
净丑 2016-02-27
  • 打赏
  • 举报
回复
引用 10 楼 u010670806 的回复:
纠结了两天的问题终于解决了
感谢wuhuacong(伍华聪)前辈的分享的文章
http://www.cnblogs.com/wuhuacong/p/3991735.html

不过得自己再稍微改一下,其实我就是差那么一下,总之解决完浑身轻松啊


楼主乍解决的,分享一下!我也困扰住 了。
qq_23008827 2015-10-21
  • 打赏
  • 举报
回复
有java版的不
Easy_____ 2015-08-20
  • 打赏
  • 举报
回复
卤煮能不能指点指点啊,我把服务器上的两个jar文件已经替换了,还是出现解密错误啊,求解决,求解决
ios_zz 2015-06-08
  • 打赏
  • 举报
回复
遇到这个问题,很大一部原因是因为AES加解密出错,搜AES Illegal key size找解决方案,要注意文件下载的版本和服务器的运行环境是不是对应的。修改好之后重启服务。
qiaowei361 2015-03-29
  • 打赏
  • 举报
回复
我的前台页面的HTML没有删除的原因。 后台自己反复看代码都没有问题,花了一个多小时后,突然大脑想到在前台的HTML。 楼主,没有把自己解决的问题发出来,是不厚道的。 下载官方的SDK
 string sVerifyMsgSig = Request.QueryString["msg_signature"];//企业号的 msg_signature
            string sVerifyTimeStamp = Request.QueryString["timestamp"];
            string sVerifyNonce =Request.QueryString["nonce"];
            string sVerifyEchoStr = Request.QueryString["echoStr"];
            int ret = 0;
            string sEchoStr = "";
            ret = wxqy.VerifyURL(sVerifyMsgSig, sVerifyTimeStamp, sVerifyNonce, sVerifyEchoStr, ref sEchoStr);
            if (ret != 0)
            {
                Response.Write("ERR: VerifyURL fail, ret: " + ret);
                return;
            }
            Response.Write(sEchoStr);
wangjinlong 2015-03-13
  • 打赏
  • 举报
回复
引用 10 楼 u010670806 的回复:
纠结了两天的问题终于解决了 感谢wuhuacong(伍华聪)前辈的分享的文章 http://www.cnblogs.com/wuhuacong/p/3991735.html 不过得自己再稍微改一下,其实我就是差那么一下,总之解决完浑身轻松啊
怎么解决的啊,我搞了一晚上了,
asia_zy 2015-02-12
  • 打赏
  • 举报
回复
纠结了两天的问题终于解决了 感谢wuhuacong(伍华聪)前辈的分享的文章 http://www.cnblogs.com/wuhuacong/p/3991735.html 不过得自己再稍微改一下,其实我就是差那么一下,总之解决完浑身轻松啊
webdiyer 2015-02-12
  • 打赏
  • 举报
回复
用现成的SDK比较方便又节省时间,我用这个:https://github.com/JeffreySu/WeiXinMPSDK
Justin-Liu 2015-02-12
  • 打赏
  • 举报
回复
引用 6 楼 u010670806 的回复:
[quote=引用 4 楼 FoxDave 的回复:] 错误提示你请检查是否正确地解密了并输出明文echostr
楼上大神好腻害,获得了那么多牛掰的徽章,可以拜师么?[/quote] 不是大神。。。收不了徒弟
woodsmith 2015-02-12
  • 打赏
  • 举报
回复
最好使用ashx
asia_zy 2015-02-11
  • 打赏
  • 举报
回复
求帮顶,求解决~
asia_zy 2015-02-11
  • 打赏
  • 举报
回复
引用 4 楼 FoxDave 的回复:
错误提示你请检查是否正确地解密了并输出明文echostr
楼上大神好腻害,获得了那么多牛掰的徽章,可以拜师么?
asia_zy 2015-02-11
  • 打赏
  • 举报
回复
引用 4 楼 FoxDave 的回复:
错误提示你请检查是否正确地解密了并输出明文echostr
那么问题来了,怎么才能正确地解密并输出明文echostr?
Justin-Liu 2015-02-11
  • 打赏
  • 举报
回复
错误提示你请检查是否正确地解密了并输出明文echostr
加载更多回复(2)

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧