有段時間沒有寫文章了。
一直以來,微信的熱門是看得到的,很多人都需要與微信的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;
}
}
}
