一款简单易用的基础网络通讯组件库。

HttpExtensions 类

Http扩展辅助

Definition

命名空间: TouchSocket.Http
程序集: TouchSocket.Http (在 TouchSocket.Http.dll 中) 版本:4.0.0-beta.143+5fcca7a4e70968794985dc3793adc50531308be6
C#
public static class HttpExtensions
Inheritance
Object    HttpExtensions

属性

CurrentHttpDate 获取当前的GMT格式日期字符串,通常用于HTTP响应头中的Date字段。

方法

AddCurrentDateHeaderTRequest 向请求头添加当前GMT时间的Date字段。
AddHeaderTRequest 添加Header参数
AddQueryTRequest 添加Query参数
AsDeleteTRequest 将请求对象的方法设置为Delete。
AsGetTRequest 将请求方法设置为Get
AsMethodTRequest 将指定的请求对象设置为指定的HTTP方法。 该方法扩展了HttpRequest类,允许在调用时动态改变请求的方法类型。
AsPostTRequest 将请求对象设置为Post方法
AsPutTRequest 将请求对象的方法设置为PUT
CreateWriteStreamTResponse 为指定的 HTTP 响应创建一个写入流。
FromFileAsync(HttpContext, FileInfo, String, Int32, Int32, Boolean) 从文件响应。

当response支持持续写入时,会直接回复响应。并阻塞执行,直到完成。所以在执行该方法之前,请确保已设置完成所有状态字

当response不支持持续写入时,会填充Content,且不会响应,需要自己执行Build,并发送。

FromFileAsync(HttpResponse, FileInfo, HttpFlowOperator, HttpRequest, String, Boolean) 从文件响应。

当response支持持续写入时,会直接回复响应。并阻塞执行,直到完成。所以在执行该方法之前,请确保已设置完成所有状态字

当response不支持持续写入时,会填充Content,且不会响应,需要自己执行Build,并发送。

FromFileAsync(HttpResponse, FileInfo, HttpRequest, String, Int32, Int32, Boolean) 从文件响应。

当response支持持续写入时,会直接回复响应。并阻塞执行,直到完成。所以在执行该方法之前,请确保已设置完成所有状态字

当response不支持持续写入时,会填充Content,且不会响应,需要自己执行Build,并发送。

FromHtmlTResponse 设置HTML内容。
FromJsonT 从Json
FromTextT 从文本
FromXmlT 从Xml格式
FromXMLT 从Xml格式
已过时
GetBodyAsync(HttpBase, CancellationToken) 异步获取utf8编码的 HTTP 请求的主体内容。
GetBodyAsync(HttpBase, Encoding, CancellationToken) 异步获取 HTTP 请求的主体内容。
GetBoundary 当数据类型为multipart/form-data时,获取boundary
GetFormCollectionAsyncTRequest 异步获取HttpRequest的表单集合
GetMultifileCollectionTRequest 获取多文件集合。如果不存在,则返回null。
已过时
InitHeadersTRequest 初始化常规的请求头。

包含:

  1. Connection:keep-alive
  2. Pragma:no-cache
  3. UserAgent:TouchSocket.Http
IsAcceptGzipTRequest 判断请求是否接受Gzip压缩。
IsDeleteTRequest 判断当前请求是否为Delete操作
IsGetTRequest 判断当前请求是否为Get请求
IsMethodTRequest 判断指定的请求是否为指定的HTTP方法类型
IsPostTRequest 判断当前请求是否为Post请求
IsPutTRequest 判断请求是否为PUT方法
IsSuccessTResponse 判断返回的状态码是否为成功。
IsUpgradeTRequest 判断请求头中是否包含升级连接
SetContentT(T, HttpContent) 为HttpBase类型对象设置内容。
SetContentT(T, String, Encoding) 设置内容
SetContentLengthT 设置数据体长度
SetContentTypeByExtensionT 从扩展名设置内容类型,必须以“.”开头
SetContentTypeFromFileNameTResponse 设置文件类型。
SetFormUrlEncodedContentTRequest 将一个键值对集合按照application/x-www-form-urlencoded格式设置到HttpRequest的内容中
SetGzipContentTResponse 为指定的HttpResponse对象设置Gzip压缩内容
SetHostTRequest 添加Host请求头
SetRedirectTResponse 设置重定向响应。

默认状态码为302,状态信息为"Found"。如果需要自定义状态码和状态信息,请使用SetStatusTResponse(TResponse, Int32, String)方法。

SetStatusTResponse 设置状态,并且附带时间戳。
SetStatusWithSuccessTResponse 设置默认Success状态,并且附带时间戳。
SetUrlTRequest 设置Url,可带参数
UrlEqualsTRequest 对比不包含参数的Url。其中有任意一方为,则均返回False。
UrlNotFindTResponse 设置HTTP响应为404 Not Found 此方法用于处理路径文件未找到的情况,它将HTTP响应的状态码设置为404,并在响应体中返回一个简单的HTML页面,指示文件未找到。

字段

HttpHeadersServer 表示 HTTP 头部的服务器信息。
MultipartFormData 表示 multipart/form-data 内容类型的常量字符串。

参见