使用WebClient进行文件上传

Posted 海龙的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用WebClient进行文件上传相关的知识,希望对你有一定的参考价值。

注释部分为异步上传,几行代码就能搞定

 public static bool Upload(string url, string path)
        {
            using (WebClient client = new WebClient())
            {
                try
                { 
                    //同步上传不容易报错
                    byte[] data = client.UploadFile(new Uri(url), "POST", path);
                    string reply = Encoding.UTF8.GetString(data);


                    return true;
                    //client.UploadFileAsync(new Uri(url), "POST", path);
                    //client.UploadFileCompleted += delegate(object sender, UploadFileCompletedEventArgs e)
                    //{
                    //    byte[] data = (byte[])e.Result;
                    //    string reply = Encoding.UTF8.GetString(data);
//};
                }
                catch (Exception e)
                {
                    return false;
                    throw new Exception("文件上传失败:" + e.Message + " " + path);
                }
            }
        }

 

以上是关于使用WebClient进行文件上传的主要内容,如果未能解决你的问题,请参考以下文章

通过 WebClient 使用 POST 值上传文件

使用 webclient 类将文件上传到文件服务器

[C#]使用WebClient上传文件并同时Post表单数据字段到服务端

Spring Webflux上传大图像文件并以流式方式使用WebClient发送文件[关闭]

使用WebClient.OpenWrite 方法 (String, String)这个的时候出现了内存溢出

C#客户端用WebClient上传文件至IIS服务器,报错:远程服务器返回错误: (404) 未找到