第一次用markdown写博客,体验下

因为常用Http的几种请求方式,总结一下。

1.封装两个Http的最常用方法,叫做HttpHelper类。

HttpPost:

    public static string HttpPost(string Url, string postDataStr){HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);request.Method = "POST";request.ContentType = "application/x-www-form-urlencoded";request.ContentLength = postDataStr.Length;StreamWriter writer = new StreamWriter(request.GetRequestStream(), Encoding.ASCII);writer.Write(postDataStr);writer.Flush();HttpWebResponse response = (HttpWebResponse)request.GetResponse();string encoding = response.ContentEncoding;if (encoding == null || encoding.Length < 1){encoding = "UTF-8"; //默认编码  }StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(encoding));string retString = reader.ReadToEnd();return retString;}

HttpGet:

    public static string HttpGet(string Url){HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);request.Method = "GET";request.ContentType = "text/html;charset=UTF-8";HttpWebResponse response = (HttpWebResponse)request.GetResponse();Stream myResponseStream = response.GetResponseStream();StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8);string retString = myStreamReader.ReadToEnd();myStreamReader.Close();myResponseStream.Close();return retString;}

WebClientde中Post和Get:

    //Postusing (var client = new WebClient()){client.Headers[HttpRequestHeader.ContentType] = "application/json";client.Encoding = Encoding.UTF8;result = client.UploadString(postUrl, "POST", postData);}//Get var wc = new WebClient();var jsonResult = wc.DownloadString(Url);

封装好Http的方法,直接传入Url和postData即可,不必每次创建request对象。

更新:the remote server returned an error (401) unauthorized

    var req = (HttpWebRequest)WebRequest.Create(tgtUrl);req.UseDefaultCredentials = true;req.PreAuthenticate = true;req.Credentials = CredentialCache.DefaultCredentials;var response = req.GetResponse();var stream = req.GetRequestStream();var wc = new WebClient();//Set default credential, avoid unauthorize errorwc.Credentials = CredentialCache.DefaultCredentials;wc.UseDefaultCredentials = true;

转载于:https://www.cnblogs.com/shy-huang/p/7345285.html

常用 Http 的请求方法相关推荐

  1. 常用的HTTP请求方法

    前端日常发送HTTP请求最长用到GET, POST两种方法,如果是在一个符合RESTful设计规范的应用中, 常用到5个方法:GET.POST.PUT.PATCH.DELETE. PS: RESTfu ...

  2. RESTful API常用的HTTP请求方法

    GET:获取资源 例如图片.css文件.js文件等,在RESTful API中,一般用来获取数据,例如列表,详情等.对应CRUD中的R,即查找操作. POST:传输实体主体 例如提交表单信息,在RES ...

  3. HTTP请求格式、状态码及常用请求方法

    常用的HTTP请求方法,按照RFC2616标准(HTTP1.1)来看,通常有以下8种方法:get.post.put.delete.head.trace.connect.options. HTTP请求格 ...

  4. jQuery 发起 Ajax 请求最常用的三个方法

    浏览器中提供的 XMLHttpRequest 用法比较复杂,所以 jQuery 对 XMLHttpRequest 进行了封装,提供了一系列 Ajax 相关的函数,极大地降低了 Ajax 的使用难度. ...

  5. http常用请求方式及发起请求方法总结

    目录 请求方式 get post delete put head 发起请求 方法 例子 请求方式 前五种请求方式比较常用,下面来做一些补充: get 请求指定页面的信息,并返回实体主体. (1)get ...

  6. spring boot项目 中止运行 最常用的几种方法

    spring boot项目 中止运行 最常用的几种方法: 1. 调用接口,停止应用上下文 @RestController public class ShutdownController impleme ...

  7. HTTP简介、请求方法与响应状态码

    点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! Https相关的文章,请看这一篇:TCP.IP协议族之数字签名与HTTPS详解 接下来想系统的回顾 ...

  8. PHP教程:WebService最常用的两种方法

    国内用PHP写WebService的真的很少,网上资料也没多少,公司的项目开发过程中,经历了不少这方面的东西,写出来以供大家参考(谢谢老农提供的WSDL和程序文件) 客户端 代码: 01.   02. ...

  9. TCP/IP协议族(一) HTTP简介、请求方法与响应状态码

    接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的.接下来的几篇博客都是关于TCP/IP协议族的,本篇博客就先简单 ...

最新文章

  1. 已知环境静态障碍物避障_我女儿如何教我无障碍环境
  2. C语言入门经典读书笔记 ----第六章 字符串和文本的应用
  3. 高斯-勒让德公式 求积分
  4. java线程同步的五种方法
  5. 数据中心建设模式变革-- 如何采用EPC模式实现快速交付?
  6. 吴恩达机器学习笔记:(五)区别于微积分的正规方程求解最优解
  7. 怎样查看mysql的安装路径
  8. Android属性动画 ObjectAnimator
  9. 10个你必须知道的Python内置函数
  10. mobileNet v2网络详解
  11. CCCC-GPLT L1-037. A除以B 团体程序设计天梯赛
  12. 英雄联盟官宣IG冠军皮肤原画 彩蛋是王思聪吃热狗
  13. 联想微型计算机a20,联想乐player A20
  14. java之随机生成名字
  15. Android 12.0 导航栏Icon图标大小修改
  16. 云计算与分布式技术-常见云的比较
  17. headers java_RabbitMQ四种Exchange类型之Headers(Java)
  18. Mac安装jekyll踩坑
  19. 正则表达式 企业统一社会信用代码、企业13位工商注册号、企业组织机构代码...
  20. ubuntu 下超简单的安装微信,QQ等软件

热门文章

  1. mysql排序由低到高_MySQL入门系列(四)—— 排序查询
  2. java中用jdom 如何创建xml文档/将数据写入XML中
  3. 大学编译原理试卷考试题
  4. ES6前端就业课第三课之class
  5. bootstrap 分页_这五款超好用的Bootstrap扩展,让你的Web开发事半功倍
  6. ubuntu18.04搭建 kubernetes(k8s)集群
  7. python大杀器之requests安装
  8. protocol buffer介绍(protobuf)
  9. spark之2:原理介绍
  10. 关于LBS坐标系与精度的问题