获取并保存WebClient发布的文件

时间:2013-11-06 06:58:10

标签: c# asp.net post webclient

我编写了一个将文件发布到我的网站的桌面应用程序

WebClient webclient = new WebClient();
webclient.UploadFileAsync(new Uri("http://mysite.com/getfile.aspx"),"POST", filename);

现在我需要创建一个名为getfile.aspx的页面来保存已发布的Image。但我不知道如何访问发布的文件数据。

我不要求代码只需知道如何访问已发布的文件。

1 个答案:

答案 0 :(得分:1)

            String imageURL = "xyz";
            String userName = "xyz";
            String password = "xyz";
            String destinationFolder = "xyz";
            Uri ftpSourceFilePath = new Uri(imageURL);

            if (ftpSourceFilePath.Scheme == Uri.UriSchemeHttp)
            {
                HttpWebRequest objRequest = (HttpWebRequest)HttpWebRequest.Create(ftpSourceFilePath);
                NetworkCredential objCredential = new NetworkCredential(userName, password);
                objRequest.Credentials = objCredential;
                objRequest.Method = WebRequestMethods.Ftp.DownloadFile;
                HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
                StreamReader objReader = new StreamReader(objResponse.GetResponseStream());
                int len = 0;
                int iProgressPercentage = 0;
                FileStream objFS = new FileStream((destinationFolder), FileMode.Create, FileAccess.Write, FileShare.Read);
                byte[] buffer = new byte[1024];
                while ((len = objReader.BaseStream.Read(buffer, 0, buffer.Length)) > 0)
                {

                    objFS.Write(buffer, 0, len);

                }
            }