http://www.cnblogs.com/shanyou/archive/2012/03/21/2410739.html

http://msdn.microsoft.com/zh-cn/library/system.net.http.httpclient.aspx

http://code.msdn.microsoft.com/Introduction-to-HttpClient-4a2d9cee

  1.     using System.Net.Http;
        public static string GetHttpResponse(string queryUrl)
  2. {
  3.  
  4. try
  5. {
  6. HttpClientHandler handler = new HttpClientHandler();
  7. handler.UseDefaultCredentials = true;
  8. handler.CookieContainer = new CookieContainer();
  9. handler.UseCookies = true;
  10. handler.AllowAutoRedirect = true;
  11.  
  12. using (HttpClient client = new HttpClient(handler))
  13. {
  14. // Add a user-agent header
  15. client.DefaultRequestHeaders.Add("user-agent", USERAGENT);
  16. Console.WriteLine("update user agent {0}", client.DefaultRequestHeaders.UserAgent);
  17.  
  18. // add referer
  19. client.DefaultRequestHeaders.Add("referer", REFERER);
  20. Console.WriteLine("update referer {0}", client.DefaultRequestHeaders.Referrer);
  21.  
  22. //add accept
  23. client.DefaultRequestHeaders.Add("accept", ACCEPT);
  24. Console.WriteLine("update accept {0}", client.DefaultRequestHeaders.Accept);
  25.  
  26. // add accept-encoding
  27. client.DefaultRequestHeaders.Add("accept-encoding", ACCEPTENCODING);
  28. Console.WriteLine("update encoding {0}", client.DefaultRequestHeaders.AcceptEncoding);
  29.  
  30. // compose the url
  31. string requestUrl = string.Format("{0}{1}", BINGDEXURL, queryUrl);
  32. // send request
  33. var result = client.GetAsync(requestUrl).Result;
  34.  
  35. string res = result.Content.ReadAsStringAsync().Result;
  36. Console.WriteLine("res \n" + res);
  37.  
  38. File.WriteAllText(@"D:\temp2.html", res);
  39. return res;
  40. }
  41. }
  42. catch (Exception ex)
  43. {
  44. Console.WriteLine(string.Format("Failed while getting response for {0} with below error message", queryUrl));
  45. Console.WriteLine(ex.Message);
  46. }
  47. return null;
  48.  
  49. }

C#: Create a WebRequest with HTTPClient的更多相关文章

  1. 第三节:总结.Net下后端的几种请求方式(WebClient、WebRequest、HttpClient)

    一. 前言 前端调用有Form表单提交,ajax提交,ajax一般是用Jquery的简化写法,在这里不再过多介绍: 后端调用大约有这些:WebCient.WebRequest.Httpclient.W ...

  2. C#: Create a WebRequest with HTTP Basic Authentication

    http://blog.csdn.net/huangyaoshifog/article/details/4470675 myReq = WebRequest.Create(url); string u ...

  3. 使用HttpClient和WebRequest时POST一个对象的写法

    [一]步骤: 1)将对象转化为Json字符串. 2)将Json字符串编码为byte数组. 3)设置传输对象(WebRequest或者HttpClient)的ContentType是"appl ...

  4. .Net5下WebRequest、WebClient、HttpClient是否还存在使用争议?

    WebRequest.WebClient.HttpClient 是C#中常用的三个Http请求的类,时不时也会有人发表对这三个类使用场景的总结,本人是HttpClient 一把梭,也没太关注它们的内部 ...

  5. 如何选择 WebClient,HttpClient,HttpWebRequest

    当我们在用 .NET 调用 RestAPI 时通常有三种选择,分别为:WebClient, HttpWebRequest,HttpClient,这篇文章我们将会讨论如何使用这三种方式去调用 RestA ...

  6. c#利用WebClient和WebRequest获取网页源代码的比较

    前几天举例分析了用asp+xmlhttp获取网页源代码的方法,但c#中一般是可以利用WebClient类和WebRequest类获取网页源代码.下面分别说明这两种方法的实现. WebClient类获取 ...

  7. C#、.NET网络请求总结(WebClient和WebRequest)

    1.关于WebClient第三方的封装,支持多文件上传等 using System; using System.Collections.Generic; using System.Text; usin ...

  8. c#利用WebClient和WebRequest获取网页源代码

    C#中一般是可以利用WebClient类和WebRequest类获取网页源代码.下面分别说明这两种方法的实现.   WebClient类获取网页源代码   WebClient类   WebClient ...

  9. .NET Core 使用 HttpClient SSL 请求出错的解决办法

    问题 使用 HTTP Client 请求 HTTPS 的 API 时出现 The certificate cannot be verified up to a trusted certificatio ...

随机推荐

  1. 《Cocos2d-x实战 Lua卷》上线了

    感谢大家一直以来的支持!各大商店均开始销售:京东:http://item.jd.com/11659697.html当当:http://product.dangdang.com/23659810.htm ...

  2. 分栏控制器和导航栏目tabBarItem,UINavigationController

    ////  AppDelegate.m//  TabBarControllerDemo////  Created by qianfeng on 15/9/22.//  Copyright (c) 20 ...

  3. Python深复制浅复制or深拷贝浅拷贝

    1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象.(比深拷贝更加节省内存)2. copy.deepcopy 深拷贝 拷贝对象及其子对象 用一个简单的例子说明如下: >& ...

  4. (转)Centos5.5安装MONO2.10.8和Jexus 5.0开启Linux平台.net应用新篇章

    注:本文只做本人记录使用,也可供大家参考,有兴趣的可以一起讨论. 安装步骤 1.yum –y update 2.安装Mono源码安装需要的库 yum -y install gcc gcc-c++ bi ...

  5. linux exec函数族

    1.简介 在Linux中,并不存在exec()函数,exec指的是一组函数,一共有6个,分别是: #include <unistd.h>   extern char **environ; ...

  6. java和javascript中this区别的浅探讨

    今天在学习javascript的时候碰到了this,感觉它跟java里的有点不一样.然后上网查了一下,参考了这篇文章,JavaScript中this关键字详解,发现它们之间的区别主要是这样: java ...

  7. EDK中如何使用ISE中生成的IP

    EDK中如何使用ISE中生成的IP: 网上上有说这个的文章,但是很复杂,也就是添加bdd文件,其实这些都不需要自己操作的,我们可以在EDK中import 中添加ngc文件,ngc文件就是core ge ...

  8. ADO.NET笔记——SQL注入攻击

    相关知识: 可以通过字符串的拼接来构造一个SQL命令字符串,但是SQL命令字符串的拼接确是造成“SQL注入攻击”的重要原因. 考虑下列例子:从ProductCategory表中检索出Name为“Bik ...

  9. win10任务视图

    之所以用到win10任务视图源自于一个需求,就是我想在上班操作电脑的同时想将某个游戏在后台挂机,这样工作归工作,挂机归挂机,互不干扰.win10任务视图就能轻松的解决这个问题. 任务视图 新建任务视图 ...

  10. 【Qt】QSettings读写注册表、配置文件【转】

    简述 一般情况下,我们在开发软件过程中,都会缓存一些信息到本地,可以使用轻量级数据库sqlite,也可以操作注册表.读写配置文件. 关于QSettings的使用前面已经介绍过了,比较详细,见“更多参考 ...