• C#5.0异步编程 HttpClient IP代理验证原码


    //访问HttpClient 代码
    public async Task<string> VerifyProxy(string url, string proxy = "", string Method = "GET")
    {
    HttpClientHandler _hch = new HttpClientHandler()
    {
    Proxy = new WebProxy(proxy),
    UseProxy = true
    };
    HttpClient _ch = new HttpClient(_hch);
    try
    {
    sw.Start();
    var response = await _HttpClient.GetAsync(url);//, cancelationTokenSource.Token
    sw.Stop();
    response.EnsureSuccessStatusCode();//如果为false,则异常
    if (response.StatusCode == HttpStatusCode.OK)
    {
    return "true";
    }
    }
    catch (Exception)
    {
    return "";
    }
    finally {
    }

    return "";
    }

    //显示代码
    private void DisplayResults(int item, string result, decimal time)
    {
    dataGridView1.Rows[item].Cells[2].Value = string.IsNullOrWhiteSpace(result) ? "失败" : "成功";
    dataGridView1.Rows[item].Cells[3].Value = time;
    }

    //循环访问HTTPCLIENT
    private async Task PageSizesAsync()
    {
    HttpClientHelper http = new HttpClientHelper();
    Dictionary<string, int> protList = await SetProtList();
    string result = string.Empty;
    foreach (var item in protList)
    {
    result = await http.VerifyProxy(uri, item.Key);
    DisplayResults(item.Value, result, http.sw.ElapsedTicks / (decimal)Stopwatch.Frequency);
    }
    }

  • 相关阅读:
    职业的选择
    事务的隔离性理解
    浅谈CSS和JQuery实现鼠标悬浮图片放大效果
    jvm 类加载器
    jvm 类加载
    Spring 启动 Bean加载流程
    优雅的博客园客户端发布Forms版啦。
    Xamarin Forms中WebView的自适应高度
    2017回顾与2018目标
    优雅的博客园Android客户端
  • 原文地址:https://www.cnblogs.com/sanler/p/7263331.html
Copyright © 2020-2023  润新知