佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > 微信公眾平臺開發(fā)之認證成為開發(fā)者.Net代碼解析

微信公眾平臺開發(fā)之認證成為開發(fā)者.Net代碼解析

熱門標簽:硅谷的囚徒呼叫中心 智能手機 解決方案 呼叫中心 服務器配置 蘋果 電子圍欄 地方門戶網(wǎng)站

.Net 實現(xiàn)微信公共服務平臺開發(fā)的認證,認證成為開發(fā)者,具體內容如下

這些代碼也就開始認證的時候用一次,以后就不用了:

const string Token = "XXXXX";//你的token 
protected void Page_Load(object sender, EventArgs e) 
{ 
  string postStr = ""; 
  if (Request.HttpMethod.ToLower() == "post") 
  { 
    System.IO.Stream s = System.Web.HttpContext.Current.Request.InputStream; 
    byte[] b = new byte[s.Length]; 
    s.Read(b, 0, (int)s.Length); 
    postStr = System.Text.Encoding.UTF8.GetString(b); 
    if (!string.IsNullOrEmpty(postStr)) 
    { 
      //ResponseMsg(postStr); 
      Response.Write(ResponseMsg(postStr)); 
      Response.End(); 
    } 
   //WriteLog("postStr:" + postStr); 
  } 
  else 
  { 
    Valid(); 
  } 
}    
 
/// summary> 
/// 驗證微信簽名 
/// /summary> 
/// * 將token、timestamp、nonce三個參數(shù)進行字典序排序 
/// * 將三個參數(shù)字符串拼接成一個字符串進行sha1加密 
/// * 開發(fā)者獲得加密后的字符串可與signature對比,標識該請求來源于微信。 
/// returns>/returns> 
private bool CheckSignature() 
{ 
  string signature = Request.QueryString["signature"].ToString(); 
  string timestamp = Request.QueryString["timestamp"].ToString(); 
  string nonce = Request.QueryString["nonce"].ToString(); 
  string[] ArrTmp = { Token, timestamp, nonce }; 
  Array.Sort(ArrTmp);   //字典排序 
  string tmpStr = string.Join("", ArrTmp); 
  tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1"); 
  tmpStr = tmpStr.ToLower(); 
  if (tmpStr == signature) 
  { 
    return true; 
  } 
  else 
  { 
    return false; 
  } 
} 
.private void Valid() 
{ 
  string echoStr = Request.QueryString["echoStr"].ToString(); 
  if (CheckSignature()) 
  { 
    if (!string.IsNullOrEmpty(echoStr)) 
    { 
      Response.Write(echoStr); 
      Response.End(); 
    } 
  } 
}    
 
/// summary> 
/// 寫日志(用于跟蹤) 
/// /summary> 
private void WriteLog(string strMemo) 
{ 
  string filename = Server.MapPath("/logs/log.txt"); 
  if (!Directory.Exists(Server.MapPath("http://logs//"))) 
    Directory.CreateDirectory("http://logs//"); 
  StreamWriter sr = null; 
  try 
  { 
    if (!File.Exists(filename)) 
    { 
      sr = File.CreateText(filename); 
    } 
    else 
    { 
      sr = File.AppendText(filename); 
    } 
    sr.WriteLine(strMemo); 
  } 
  catch 
  { 
 
  } 
  finally 
  { 
    if (sr != null) 
      sr.Close(); 
  } 
} 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • .Net微信開發(fā)之如何解決access_token過期問題
  • 微信公眾平臺開發(fā)之語音識別.Net代碼解析
  • 微信公眾平臺開發(fā)之獲得ACCESSTOKEN .Net代碼解析
  • ASP.NET實現(xiàn)QQ、微信、新浪微博OAuth2.0授權登錄
  • asp.net實現(xiàn)微信公眾賬號接口開發(fā)教程
  • ASP.NET微信開發(fā)(接口指南)
  • asp.net微信開發(fā)(高級群發(fā)圖文)
  • asp.net微信開發(fā)(已關注用戶管理)
  • asp.net微信開發(fā)(開發(fā)者接入)
  • 微信公眾號支付(MVC版本)

標簽:佳木斯 泰安 呂梁 玉林 房產(chǎn) 德宏 喀什

巨人網(wǎng)絡通訊聲明:本文標題《微信公眾平臺開發(fā)之認證成為開發(fā)者.Net代碼解析》,本文關鍵詞  ;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    青浦区| 搜索| 延庆县| 开远市| 都江堰市| 济阳县| 团风县| 和田市| 平远县| 蓬莱市| 抚松县| 张北县| 嵩明县| 体育| 建平县| 凤翔县| 满城县| 冷水江市| 武清区| 黔东| 丽水市| 株洲县| 开封县| 铜鼓县| 湟中县| 曲水县| 增城市| 高邮市| 昭平县| 清水河县| 达日县| 福清市| 建阳市| 东海县| 定西市| 布拖县| 和硕县| 佛教| 五原县| 始兴县| 淮南市|