/// <summary> /// �������� /// </summary> public HttpWebRequest CreateHttpRequest(Request request) { var webrequest = (HttpWebRequest)WebRequest.Create(request.Url); webrequest.Accept = Accept; webrequest.UserAgent = UserAgent; webrequest.Timeout = request.GetTimeoutMs(); if (Cookie != null) { webrequest.CookieContainer = Cookie; } switch (request.Methods) { case Request.Method.DEPRECATED_GET_OR_POST: { if (request.GetPostBody() != null) { webrequest.Method = HttpMethod.POST; webrequest.ContentType = request.GetPostBodyContentType(); WriteData(webrequest, request.GetPostBody()); return webrequest; } else { return webrequest; } } case Request.Method.GET: { return webrequest; } case Request.Method.DELETE: { webrequest.Method = HttpMethod.DELETE; return webrequest; } case Request.Method.POST: { webrequest.ContentType = request.GetBodyContentType(); webrequest.Method = HttpMethod.POST; WriteData(webrequest, request.GetPostBody()); return webrequest; } case Request.Method.PUT: { webrequest.ContentType = request.GetBodyContentType(); webrequest.Method = HttpMethod.PUT; WriteData(webrequest, request.GetPostBody()); return webrequest; } case Request.Method.HEAD: { webrequest.Method = HttpMethod.HEAD; return webrequest; } case Request.Method.OPTIONS: { webrequest.Method = HttpMethod.OPTIONS; return webrequest; } case Request.Method.TRACE: { webrequest.Method = HttpMethod.TRACE; return webrequest; } case Request.Method.PATCH: { webrequest.Method = HttpMethod.PATCH; webrequest.ContentType = request.GetPostBodyContentType(); WriteData(webrequest, request.GetPostBody()); return webrequest; } default: { throw new InvalidOperationException("δ֪����ʽ"); } } }