public static string CreateRequestUrl(Dictionary <string, string> dispatcher) { var paramStr = new StringBuilder(); foreach (var pair in AuthParams) { paramStr.AppendFormat("{0}={1}&", EncodingHelper.UrlEncodeU8(pair.Key.Trim()), EncodingHelper.UrlEncodeU8(pair.Value.Trim())); } return(string.Format("{0}{1}?{2}", API_BASE_URL, string.Join("/", dispatcher.Values.ToArray()), paramStr)); }
public static String HttpPost(string uri, Dictionary <String, String> paramters) { var webRequest = WebRequest.Create(uri); var paramStr = new StringBuilder(""); foreach (KeyValuePair <String, String> pair in paramters) { if (pair.Value != null) { paramStr.AppendFormat("{0}={1}&", EncodingHelper.UrlEncodeU8(pair.Key.Trim()), EncodingHelper.UrlEncodeU8(pair.Value.Trim())); } } webRequest.ContentType = "application/x-www-form-urlencoded"; webRequest.Method = "POST"; byte[] bytes = Encoding.ASCII.GetBytes(paramStr.ToString()); Stream stream = null; try { webRequest.ContentLength = bytes.Length; stream = webRequest.GetRequestStream(); stream.Write(bytes, 0, bytes.Length); //Send it var webResponse = webRequest.GetResponse(); var sr = new StreamReader(webResponse.GetResponseStream()); return(sr.ReadToEnd().Trim()); } finally { if (stream != null) { stream.Close(); } } }