public static Stream Request(string url, Enums.RequestType type, params KV[] parameters) { if (url.StartsWith("https")) { ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult); } HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(url)); request.ProtocolVersion = HttpVersion.Version10; request.Timeout = 6000; request.Method = Enum.GetName(typeof(Enums.RequestType), type); if (parameters != null && parameters.Length > 0) { StringBuilder paramBuilder = new StringBuilder(); foreach (var item in parameters) { paramBuilder.AppendFormat("{0}={1}&", item._key, item._value); } var paramStr = paramBuilder.ToString().TrimEnd('&'); byte[] paramArray = Encoding.Default.GetBytes(paramStr); Stream requestStream = request.GetRequestStream(); requestStream.Write(paramArray, 0, paramArray.Length); requestStream.Dispose(); requestStream.Close(); } HttpWebResponse response = (HttpWebResponse)request.GetResponse(); return(response.GetResponseStream()); }
internal FtpWebResponse MakeRequest(Enums.RequestType requestType, string path = null) { var uri = new Uri(BaseUri, path ?? string.Empty); FtpWebRequest req = (FtpWebRequest)WebRequest.Create(uri); req.Method = requestMap[requestType]; req.UsePassive = UsePassiveMode; req.UseBinary = UseBinaryTransferMode; req.Credentials = Credentials ?? new NetworkCredential(); req.KeepAlive = false; return((FtpWebResponse)req.GetResponse()); }