有段時間沒有寫文章了。
一直以來,微信的熱門是看得到的,很多人都需要與微信的api對接。
今天我這裡就分享全套的企業微信api介面的程式碼。
關於微信api,網上已經有很多實現的了。
但是我今天之所以還寫這個,是因為網上基本上找不到物件導向的api介面實現的程式設計,幾乎都是“程式導向”的。
本文章的程式碼,也許能帶給你極大的方便,以及非常方便的擴充套件和應用。
1.如下圖,在你的業務邏輯層中,將本文章附件的Weixin程式碼資料夾整套放進去
2.在你的頁面中,類似於下圖,插入下面的程式碼即可實現呼叫。
下圖例子是以“建立成員”的請求為例子寫的。
建立成員的API說明:http://qydev.weixin.qq.com/wiki/index.php?title=%E7%AE%A1%E7%90%86%E6%88%90%E5%91%98#.E5.88.9B.E5.BB.BA.E6.88.90.E5.91.98
3.到這裡就完成了呼叫了。其它的api方式請依樣畫葫蘆
4.附上整套原始檔程式碼,猛擊才能下載
5.檔案中有個程式碼是發起http請求的。該檔案不在源包中。
在這裡貼出程式碼,請直接複製即可
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Threading.Tasks; namespace HXL.Common.Helper { public static class Http { public static string Get(string url) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = "GET"; request.ContentType = "text/html;charset=UTF-8"; //request.ContentType = "text/html;charset=gb2312"; HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream responseStream = response.GetResponseStream(); StreamReader streamReader = new StreamReader(responseStream, Encoding.GetEncoding("utf-8")); string retString = streamReader.ReadToEnd(); streamReader.Close(); responseStream.Close(); return retString; } /// <summary> /// 用於傳送微信post請求 /// 其中data是格式化後的json格式。值形如:{"name":"21312","parentid":1,"order":11,"id":19} /// </summary> /// <param name="url"></param> /// <param name="data"></param> /// <returns></returns> public static string HttpPost(string url, string data) { string retString = string.Empty; byte[] byteArray = Encoding.UTF8.GetBytes(data); HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = "POST"; request.ContentType = "x-www-form-urlencoded"; request.ContentLength = byteArray.Length; Stream dataStream = request.GetRequestStream(); dataStream.Write(byteArray, 0, byteArray.Length); dataStream.Close(); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream myResponseStream = response.GetResponseStream(); StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8")); retString = myStreamReader.ReadToEnd(); myStreamReader.Close(); myResponseStream.Close(); return retString; } } }