C#winform 多线程下载伪造来路(模拟来路Referer)

因为有很多网站 都做了限制 如果想下载文件 就必须来路是 它的网站 那么我们就需要伪造来路了


           WebClient client = new WebClient();
           client.Headers["Referer"] = "http://www.****.com/news/5135.html";






完整代码如下



        private void ProgressBar_Value(int val)
        {
            progressBar1.Value = val;
            label1.Text = val.ToString() + "%";

            if (label1.Text == "100%")
            {


                label1.Text = "0%";
                button1_Click(null ,null );

              //  MessageBox.Show("下载完毕");
            }
        }


        private void DownloadFile(string url, string savefile, Action<int> downloadProgressChanged, Action downloadFileCompleted)
        {
            WebClient client = new WebClient();
            client.Headers["Referer"] = "http://www.52edy.com/news/5135.html";

            if (downloadProgressChanged != null)
            {
                client.DownloadProgressChanged += delegate (object sender, DownloadProgressChangedEventArgs e)
                {
                    this.Invoke(downloadProgressChanged, e.ProgressPercentage);
                };
            }
            if (downloadFileCompleted != null)
            {
                client.DownloadFileCompleted += delegate (object sender, AsyncCompletedEventArgs e)
                {
                    this.Invoke(downloadFileCompleted);


                };
            }
            client.DownloadFileAsync(new Uri(url), savefile);

        }
        delegate void Action(); //.NET Framework 2.0得自定义委托Action







        private void button1_Click(object sender, EventArgs e)
        {
            DownloadFile(textBox1 .Text , @"1.rar", ProgressBar_Value, null);


        }


winform代码
桂ICP备16004754号