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

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

熱門標(biāo)簽:400電話辦理怎么樣 外呼電話機器人成本 網(wǎng)絡(luò)電話外呼系統(tǒng)上海 蘇州如何辦理400電話 聯(lián)通官網(wǎng)400電話辦理 臨沂智能電話機器人加盟 地圖標(biāo)注軟件免費下載 西寧呼叫中心外呼系統(tǒng)線路商 百應(yīng)電話機器人外呼系統(tǒng)

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

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

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對比,標(biāo)識該請求來源于微信。 
/// 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(); 
  } 
} 

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

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

標(biāo)簽:慶陽 清遠 海西 聊城 中衛(wèi) 甘肅 臨夏

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《微信公眾平臺開發(fā)之認(rèn)證成為開發(fā)者.Net代碼解析》,本文關(guān)鍵詞  微信,公眾,平臺,開,發(fā)之,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《微信公眾平臺開發(fā)之認(rèn)證成為開發(fā)者.Net代碼解析》相關(guān)的同類信息!
  • 本頁收集關(guān)于微信公眾平臺開發(fā)之認(rèn)證成為開發(fā)者.Net代碼解析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章