1.http Get请求
/// <summary>
/// HTTP GET请求(带加签)
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="url">请求URL</param>
/// <param name="pairs">请求数据</param>
/// <param name="appid">APPID</param>
/// <param name="isSign">是否加签 默认为是</param>
/// <returns></returns>
public static T Get<T>(string url, SortedDictionary<string, object> pairs, string appid, bool isSign = true)
{
HttpWebRequest webRequest = null;
HttpWebResponse webresponse = null;
var str_result = string.Empty;
try
{
string paramStr = "";
if (pairs != null && pairs.Count > 0)
{
paramStr = "";
foreach (KeyValuePair<string, object> item in pairs)
{
paramStr += item.Key + "=" + item.Value + "&";
}
paramStr = paramStr.Substring(0, paramStr.Length - 1);
}
if (paramStr != "" && !url.Contains("appid"))
{
url += "?" + paramStr;
}
webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.Method = "GET";
webRequest.ContentType = "application/json";
webRequest.Timeout = 30000;
webRequest.Headers.Add("appid", appid);
var timespan = CreateTimeSpan();
var nonce = CreateNonceStr(6);
webRequest.Headers.Add("timespan", timespan);
webRequest.Headers.Add("nonce", nonce);
if (isSign)
{
var sign = CreateSignature(appid, timespan, nonce, paramStr);
webRequest.Headers.Add(