国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Rumah applet WeChat pembangunan WeChat 使用C#微信開發(fā)說明介紹

使用C#微信開發(fā)說明介紹

Mar 15, 2017 pm 05:05 PM
c# pembangunan WeChat

這篇文章主要為大家詳細使用C#微信開發(fā)說明介紹,很有參考價值和實用性,感興趣的小伙伴們可以參考一下

不想廢話,直接寫了!因為是留給自己做隨筆的,所以大神們看到別噴……
?1.必須有微信公眾賬號
?2.你也可以申請測試微信號,鏈接給你http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login
然后,建立mvc,你只需要點幾下vs就幫你搞定了。這不廢話?
接著,要創(chuàng)建一個一般處理程序,隨便起個名字,測試通過才是重點,抓緊時間……?

/// <summary>
 /// 驗證微信簽名
 /// </summary>
 /// <returns></returns>
 /// * 將token、timestamp、nonce三個參數(shù)進行字典序排序
 /// * 將三個參數(shù)字符串拼接成一個字符串進行sha1加密
 /// * 開發(fā)者獲得加密后的字符串可與signature對比,標識該請求來源于微信。
 private bool CheckSignature()
 {
 var token = "token"; 
 var signature = HttpContext.Current.Request.QueryString["signature"];
 var timestamp = HttpContext.Current.Request.QueryString["timestamp"];
 var nonce = HttpContext.Current.Request.QueryString["nonce"];
 var echostr = HttpContext.Current.Request.QueryString["echostr"];
 string[] ArrTmp = { token, timestamp, nonce };
 Array.Sort(ArrTmp); //字典排序
 var tmpStr = string.Join("", ArrTmp);
 tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1");//加密方式

 if (tmpStr.ToLower() == signature)
 {
 return true;
 }
 return false;
 }

這代碼相當于是跟微信公眾號中【開發(fā)】--》【基本配置】里面你所寫的Token 一個一對一令牌通信握手,只要互相通了,那么你就算是搞定了!

搞定是后話,還有工作沒做完,接著寫!
怎么配置,這是問題,哎只能用花生殼給測試先,至少要知道玩了半天是不是通的!
看下圖:左邊花生殼配置-----右邊iis網(wǎng)站發(fā)布綁定

使用C#微信開發(fā)說明介紹

看到這圖,你也明白下一步怎么玩了吧。本地iis配上了域名。這簡直屌爆了…………
下面。我們加上代碼。設(shè)置發(fā)送和自動回復(fù)測試,看看能不能玩

 #region 接收消息
 /// <summary>
 /// 接收微信發(fā)送的XML消息并且解析
 /// </summary>
 private void ReceiveXml()
 {
 var requestStream = HttpContext.Current.Request.InputStream;
 var requestByte = new byte[requestStream.Length];
 requestStream.Read(requestByte, 0, (int)requestStream.Length);
 var requestStr = Encoding.UTF8.GetString(requestByte);

 if (!string.IsNullOrEmpty(requestStr))
 {
 //封裝請求類
 var requestDocXml = new XmlDocument();
 requestDocXml.LoadXml(requestStr);
 var rootElement = requestDocXml.DocumentElement;
 if (rootElement == null) return;
 var wxXmlModel = new WxXmlModel
 {
  ToUserName = rootElement.SelectSingleNode("ToUserName").InnerText,
  FromUserName = rootElement.SelectSingleNode("FromUserName").InnerText,
  CreateTime = rootElement.SelectSingleNode("CreateTime").InnerText,
  MsgType = rootElement.SelectSingleNode("MsgType").InnerText
 };

 switch (wxXmlModel.MsgType)
 {
  case "text"://文本
  wxXmlModel.Content = rootElement.SelectSingleNode("Content").InnerText;
  break;
  case "image"://圖片
  wxXmlModel.PicUrl = rootElement.SelectSingleNode("PicUrl").InnerText;
  break;
  case "event"://事件
  wxXmlModel.Event = rootElement.SelectSingleNode("Event").InnerText;
  if (wxXmlModel.Event != "TEMPLATESENDJOBFINISH")//關(guān)注類型
  {
  wxXmlModel.EventKey = rootElement.SelectSingleNode("EventKey").InnerText;
  }
  break;
  default:
  break;
 }

 ResponseXML(wxXmlModel);//回復(fù)消息
 }
 }
 #endregion

 #region 回復(fù)消息
 private void ResponseXML(WxXmlModel WxXmlModel)
 {
 var QrCodeApi = new QrCodeApi();
 var XML = "";
 switch (WxXmlModel.MsgType)
 {
 case "text"://文本回復(fù)
  XML = ResponseMessage.GetText(WxXmlModel.FromUserName, WxXmlModel.ToUserName, WxXmlModel.Content);
  break;
 case "event":
  switch (WxXmlModel.Event)
  {
  case "subscribe":
  if (string.IsNullOrEmpty(WxXmlModel.EventKey))
  {
  XML = ResponseMessage.GetText(WxXmlModel.FromUserName, WxXmlModel.ToUserName, "關(guān)注成功");
  }
  else
  {
  XML = ResponseMessage.SubScanQrcode(WxXmlModel.FromUserName, WxXmlModel.ToUserName, WxXmlModel.EventKey);//掃描帶參數(shù)二維碼先關(guān)注后推送事件
  }
  break;
  case "SCAN":
  XML = ResponseMessage.ScanQrcode(WxXmlModel.FromUserName, WxXmlModel.ToUserName, WxXmlModel.EventKey);//掃描帶參數(shù)二維碼已關(guān)注 直接推送事件
  break;
  }
  break;
 default://默認回復(fù)
  break;
 }
 HttpContext.Current.Response.Write(XML);
 HttpContext.Current.Response.End();
 }
 #endregion

上面一個發(fā)送,一個接收,還是在WhApi.ashx處理程序文件里面。我就想說清楚,呵呵!
?因為你根公眾平臺握手成功了,你肯定要發(fā)點東西過去試試對吧~~
下圖是一個接收方法和一個自動匹配回復(fù)文件的關(guān)聯(lián),別急下面我會上傳這個文件!
?

使用C#微信開發(fā)說明介紹

?還缺一個配置,就是vs要設(shè)置【調(diào)試】----【附加到進程】,只需要把下面【顯示所有用戶進程】一項打勾,你就能找到w3wp.exe 如果有多個這樣的進程,那你還是要確認【用戶名】那一列,選中跟你程序池名稱一樣的就ok,點附加,確定附加!?
接下來。好玩了…………………………………………………………
?微信掃一掃那個測試公眾號,發(fā)一條自定義消息,看看有什么回復(fù),上面的繁瑣配置,可以加斷點調(diào)試的,不然搞那么多也沒意義是吧,看看發(fā)送和接收跟你自己設(shè)定的吻合,那就ok了。?

Atas ialah kandungan terperinci 使用C#微信開發(fā)說明介紹. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276
Perbezaan antara multithreading dan asynchronous C# Perbezaan antara multithreading dan asynchronous C# Apr 03, 2025 pm 02:57 PM

Perbezaan antara multithreading dan asynchronous adalah bahawa multithreading melaksanakan pelbagai benang pada masa yang sama, sementara secara tidak sengaja melakukan operasi tanpa menyekat benang semasa. Multithreading digunakan untuk tugas-tugas yang berintensifkan, sementara asynchronously digunakan untuk interaksi pengguna. Kelebihan multi-threading adalah untuk meningkatkan prestasi pengkomputeran, sementara kelebihan asynchronous adalah untuk tidak menghalang benang UI. Memilih multithreading atau asynchronous bergantung kepada sifat tugas: tugas-tugas intensif pengiraan menggunakan multithreading, tugas yang berinteraksi dengan sumber luaran dan perlu menyimpan respons UI menggunakan asynchronous.

C# vs C: Sejarah, evolusi, dan prospek masa depan C# vs C: Sejarah, evolusi, dan prospek masa depan Apr 19, 2025 am 12:07 AM

Sejarah dan evolusi C# dan C adalah unik, dan prospek masa depan juga berbeza. 1.C dicipta oleh BjarnestroustRup pada tahun 1983 untuk memperkenalkan pengaturcaraan berorientasikan objek ke dalam bahasa C. Proses evolusinya termasuk pelbagai standardisasi, seperti C 11 memperkenalkan kata kunci auto dan ekspresi Lambda, C 20 memperkenalkan konsep dan coroutin, dan akan memberi tumpuan kepada pengaturcaraan prestasi dan sistem pada masa akan datang. 2.C# telah dikeluarkan oleh Microsoft pada tahun 2000. Menggabungkan kelebihan C dan Java, evolusinya memberi tumpuan kepada kesederhanaan dan produktiviti. Sebagai contoh, C#2.0 memperkenalkan generik dan C#5.0 memperkenalkan pengaturcaraan tak segerak, yang akan memberi tumpuan kepada produktiviti pemaju dan pengkomputeran awan pada masa akan datang.

Cara menukar XML ke JSON Cara menukar XML ke JSON Apr 03, 2025 am 09:09 AM

Kaedah untuk menukar XML ke JSON termasuk: menulis skrip atau program dalam bahasa pengaturcaraan (seperti Python, Java, C#) untuk menukar; Menyisipkan atau memuat naik data XML menggunakan alat dalam talian (seperti XML ke JSON, penukar XML Gojko, alat dalam talian XML) dan memilih output format JSON; Melaksanakan tugas penukaran menggunakan XML kepada penukar JSON (seperti editor XML oksigen, Stylus Studio, ALTOVA XMLSPY); Menukar XML ke JSON menggunakan XSLT Stylesheets; Menggunakan alat integrasi data (seperti Informatic

Apakah pengaturcaraan C# multithreading? C# Pemrograman Multithreading Menggunakan C Apakah pengaturcaraan C# multithreading? C# Pemrograman Multithreading Menggunakan C Apr 03, 2025 pm 02:45 PM

C Ia dapat meningkatkan kecekapan program dengan meningkatkan prestasi, meningkatkan respons dan melaksanakan pemprosesan selari. Walaupun kelas thread menyediakan cara untuk membuat benang secara langsung, alat lanjutan seperti tugas dan async/menunggu dapat memberikan operasi tak segerak yang lebih selamat dan struktur kod yang bersih. Cabaran umum dalam pengaturcaraan multithread termasuk kebuntuan, keadaan kaum, dan kebocoran sumber, yang memerlukan reka bentuk yang teliti model threading dan penggunaan mekanisme penyegerakan yang sesuai untuk mengelakkan masalah ini.

C# .NET: Membina aplikasi dengan ekosistem .NET C# .NET: Membina aplikasi dengan ekosistem .NET Apr 27, 2025 am 12:12 AM

Bagaimana Membina Aplikasi Menggunakan .NET? Membina aplikasi menggunakan .NET boleh dicapai melalui langkah-langkah berikut: 1) Memahami asas-asas .NET, termasuk C# bahasa dan sokongan pembangunan silang platform; 2) mempelajari konsep teras seperti komponen dan prinsip kerja ekosistem .NET; 3) menguasai penggunaan asas dan lanjutan, dari aplikasi konsol mudah ke operasi WebAPIS dan pangkalan data yang kompleks; 4) terbiasa dengan kesilapan biasa dan teknik debugging, seperti konfigurasi dan isu sambungan pangkalan data; 5) Pengoptimuman prestasi aplikasi dan amalan terbaik, seperti pengaturcaraan dan caching asynchronous.

Dari web ke desktop: fleksibiliti C# .net Dari web ke desktop: fleksibiliti C# .net Apr 15, 2025 am 12:07 AM

C#.netisversatileforbothwebanddesktopdevelopment.1) Forweb, useasp.netfordynamicapplications.2) Fordesktop, ExployWindowsFormsor Wpfforrichinterfaces.3) UseXamarinforcross-platformdevelopment, enablingcodesharingacrosswindows, macOS, linux, andmobiledevices.

Rangka Kerja .NET vs C#: Menyahkodkan istilah Rangka Kerja .NET vs C#: Menyahkodkan istilah Apr 21, 2025 am 12:05 AM

.NetFramework adalah kerangka perisian, dan C# adalah bahasa pengaturcaraan. 1..NetFramework menyediakan perpustakaan dan perkhidmatan, sokongan desktop, web dan aplikasi mudah alih. 2.C# direka untuk .NetFramework dan menyokong fungsi pengaturcaraan moden. 3..NetFramework Menguruskan pelaksanaan kod melalui CLR, dan kod C# disusun ke IL dan dikendalikan oleh CLR. 4. Gunakan .NetFramework untuk membangunkan aplikasi dengan cepat, dan C# menyediakan fungsi lanjutan seperti LINQ. 5. Kesilapan umum termasuk penukaran jenis dan kebuntuan pengaturcaraan tak segerak. Alat VisualStudio diperlukan untuk debugging.

Apakah faedah multithreading dalam C#? Apakah faedah multithreading dalam C#? Apr 03, 2025 pm 02:51 PM

Kelebihan multithreading ialah ia dapat meningkatkan prestasi dan penggunaan sumber, terutamanya untuk memproses sejumlah besar data atau melakukan operasi yang memakan masa. Ia membolehkan pelbagai tugas dilakukan secara serentak, meningkatkan kecekapan. Walau bagaimanapun, terlalu banyak benang boleh menyebabkan kemerosotan prestasi, jadi anda perlu dengan teliti memilih bilangan benang berdasarkan bilangan teras CPU dan ciri -ciri tugas. Di samping itu, pengaturcaraan multi-threaded melibatkan cabaran seperti kebuntuan dan keadaan perlumbaan, yang perlu diselesaikan menggunakan mekanisme penyegerakan, dan memerlukan pengetahuan yang kukuh tentang pengaturcaraan serentak, menimbang kebaikan dan keburukan dan menggunakannya dengan berhati-hati.

See all articles