/// <summary> /// FTP로 요청을 보낸다. 응답을 받지만 파싱하지는 않는다. /// </summary> /// <param name="request"></param> internal static void SendRequestOnly(FtpWebRequest request) { request.ShouldNotBeNull("request"); using (request.GetResponse()) { if (IsDebugEnabled) { log.Debug("Send request... no response parsing..."); } } request = null; }
/// <summary> /// <paramref name="ftpClient"/>를 이용하여 비동기 방식으로 웹 응답을 받습니다. /// </summary> /// <param name="ftpClient"></param> /// <param name="request">Ftp 웹 요청 객체</param> /// <returns></returns> /// <example> /// <code> /// // 특정 파일을 FTP 서버에서 다운로드 받습니다. /// var responseTask = ftpClient.GetResponseTask(uri, WebRequestMethods.Ftp.DownloadFile); /// var stream = ((FtpWebResponse)responseTask.Result).GetResponseStream(); /// </code> /// </example> /// <seealso cref="GetResponseStreamTask"/> public static Task <WebResponse> GetResponseTask(this FtpClient ftpClient, FtpWebRequest request) { request.ShouldNotBeNull("request"); if (IsDebugEnabled) { log.Debug("Ftp ResponseStream을 비동기 방식으로 호출합니다. uri=[{0}], method=[{1}]", request.RequestUri, request.Method); } return(Task <WebResponse> .Factory.FromAsync(request.BeginGetResponse, request.EndGetResponse, null)); }