public void valid()
{
string echostr = Request.QueryString["echostr"];
if (!string.IsNullOrEmpty(echostr))
{
if (checkSignature())
{
Response.Write(echostr);
Response.End();
}
}
else
{
return;
}
}

public bool checkSignature()
{
var signature = Request.QueryString["signature"].ToString();
var timestamp = Request.QueryString["timestamp"].ToString();
var nonce = Request.QueryString["nonce"].ToString();
var token = "TMFHTongwx";
string[] ArrTmp = { token, timestamp, nonce };
Array.Sort(ArrTmp, StringComparer.Ordinal); //字典排序
string tmpStr = string.Join("", ArrTmp);
tmpStr = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, FormsAuthPasswordFormat.SHA1.ToString());
tmpStr = tmpStr.ToLower();
if (tmpStr.Equals(signature.ToLower()))
{
return true;
}
else
{
return false;
}
}

最新文章

  1. 简单的oracle分页语句
  2. Cacheable key collision with DefaultKeyGenerator
  3. iOS检测网络连接状态
  4. 疯狂java讲义——继承
  5. BJUI 转
  6. 多层架构+MVC+EF+AUTOFAC+AUTOMAPPER
  7. DataGridView显示行号
  8. iOS之PCH文件
  9. C# 添加、获取及删除PDF附件
  10. 201521123095 《Java程序设计》第1周学习总结
  11. bzoj1015星球大战
  12. 在android C/C++ native编程(ndk)中使用logcat
  13. docker安装elasticsearch
  14. Linux平台下RMAN异机恢复总结
  15. IE 浏览器不支持 ES6 Array.from(new Set( )) SCRIPT438: 对象不支持“from”属性
  16. [UE4]Expandable Area可展开的区域
  17. SAP ABAP 如何查找SMOD增强
  18. 面象对象设计原则之六:迪米特原则(LeastKnowledge Principle, LKP)
  19. 解决openwrt中文界面异常
  20. PgSQL基础之 pgsql与mysql的简单区别

热门文章

  1. 完美解决迅雷极速版强制升级到迅雷X
  2. 学完JavaScript基础有感
  3. 版本管理·玩转git(快速入门git)
  4. 使用spark dataSet 和rdd 解决 某个用户在某个地点待了多长时间
  5. pip3 Traceback (most recent call last)错误调试
  6. 以太坊智能合约[ERC20]发币记录
  7. 82天突破1000star,项目团队梳理出软件开源必须注意的8个方面
  8. FastDFS初印象
  9. MySQL5.7.27报错[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated
  10. P1963 [NOI2009]变换序列 倒叙跑匈牙利算法