标签:lib div standard type 二进制 文件 sed html 介绍
想必大家在项目开发的时候应该都在程序中调用过自己内部的接口或者使用过第三方提供的接口,咱今天不讨论 REST ,最常用的请求应该就是 GET 和 POST 了,那下面开始讲解对于 Http 请求客户端的简单封装。
首先,说一个好消息 就是 .Net Core 已将之前的 System.Net.Http 组件默认添加到了 NETStandard.Library 库中,所以直接用就好了,不需要再额外在 Nuget 上安装了,说道 Nuget 后续计划会有一篇文章介绍 Nuget 包的生成以及上传发布的文章,近期会整理发布。
该 Http 请求客户端取名 HttpReqeustClient 内部暂时使用 HttpClient (既 System.Net.Http 组件中的),暂时实现以下功能。
HttpPostDataType Http 提交数据类型类,用于指定提交的数据是 文本 还是 文件。
HttpPostDataDictionary Http 提交数据字典,要提交的数据字典该字典会包括普通文本或文件类型等数据。
里面提供有添加文本、添加文件等公共方法。
好了,最主要的 HttpReqeustClient 类提供一下
公共属性
/// <summary> /// 获取当前请求使用的 <see cref="HttpClient"/> 实例。 /// </summary> public HttpClient HttpClient { get; private set; } /// <summary> /// 获取包含状态码和数据的 HTTP 相应消息。 /// </summary> public HttpResponseMessage HttpResponseMessage { get; private set; } /// <summary> /// 获取Http请求头集合。 /// </summary> public Dictionary<string, string> Headers { get; } /// <summary> /// 获取或设置Cookie集合容器。 /// </summary> public CookieContainer CookieContainer { get; set; } /// <summary> /// 获取或设置要使用的安全证书。 /// </summary> public X509Certificate Certificate { get; set; }
方法签名
/// <summary> /// 根据 <paramref name="url"/> 发送 GET 请求获取响应的文本。 /// </summary> /// <param name="url">要请求的 url 地址。</param> /// <returns>服务器响应的文本。</returns> public string HttpGetString(string url) /// <summary> /// 根据 <paramref name="url"/> 发送 GET 请求获取响应的二进制数组。 /// </summary> /// <param name="url">要请求的 url 地址。</param> /// <returns>服务器响应的二进制数组。</returns> public byte[] HttpGetBytes(string url) /// <summary> /// 根据 <paramref name="url"/> 发送 POST 请求获取响应的文本。 /// </summary> /// <param name="url">要请求的 url 地址。</param> /// <param name="postData">要发送的数据。</param> /// <returns>服务器响应的文本。</returns> public string HttpPost(string url, Dictionary<string, string> postData) /// <summary> /// 根据 <paramref name="url"/> 发送 POST 请求获取响应的文本。 /// </summary> /// <param name="url">要请求的 url 地址。</param> /// <param name="postData">要发送的数据。</param> /// <returns>服务器响应的文本。</returns> public string HttpPost(string url, HttpPostDataDictionary postData) /// <summary> /// 根据 <paramref name="url"/> 发送 POST 请求获取响应的文本。 /// </summary> /// <param name="url">要请求的 url 地址。</param> /// <param name="httpContent">HTTP 实体正文对象。</param> /// <returns>服务器响应的文本。</returns> public string HttpPost(string url, HttpContent httpContent)
未完待续。
下篇预告:一个技术汪的开源梦 —— 基于 .Net Core 的公共组件之字符串加密 & Http 请求参数签名
标签:lib div standard type 二进制 文件 sed html 介绍
原文地址:http://www.cnblogs.com/Leo_wl/p/6059409.html