WebAPI-HTTP编程模型
2021-03-10 10:26
标签:ppc 静态 option copyto 交换 contex ide assert for 带着问题去思考,大家好! 消息 HTTP编程模型的核心就是消息抽象,表示为:HttPRequestMessage,HttpResponseMessage.用于客户端和服务端之间交换请求和响应消息。 HttpMethod类包含了一组静态属性: 标头 消息内容 HttpContent包含了非虚拟公共方法 第一种方式用于推送方式访问原始的消息内容。将一个流传递给CopyAsync方法,然后把消息内容推送到这个流中 也可以使用ReadAsStreamAsync().拉取方式访问。这个方法异步返回一个流 ReadAsStringAsync和ReadAsByteArrayAsync-异步提供消息内容的缓冲副本。ReadAsStringAsync返回原始的字节内容,ReadAsByteArrayAsync将内容解码为字符串返回 当然也可以扩展为 public override Task WebAPI-HTTP编程模型 标签:ppc 静态 option copyto 交换 contex ide assert for 原文地址:https://www.cnblogs.com/moon3/p/12708145.html
它是什么?它包含什么?它能干什么? private static readonly HttpMethod getMethod = new HttpMethod("GET");
private static readonly HttpMethod putMethod = new HttpMethod("PUT");
private static readonly HttpMethod postMethod = new HttpMethod("POST");
private static readonly HttpMethod deleteMethod = new HttpMethod("DELETE");
private static readonly HttpMethod headMethod = new HttpMethod("HEAD");
private static readonly HttpMethod optionsMethod = new HttpMethod("OPTIONS");
private static readonly HttpMethod traceMethod = new HttpMethod("TRACE")
using(car client=new HtppClient())
{
var response=
await client.GetAsync("",HttpCompletionOption.ResponseHeadersRead);
response.EnsureSuccessStatusCode();
var ms=new MemorySteam();
await response.Content.CopyToAsync(ms);
Assert.True(ms.Length>0);
}
using(var client=new HttpClient())
{
var response = await client.GetAsync("");
response.EnsureSuccessStatusCode();
var steam = await response.Content.ReadAsStreamAsync();
var buffer = new byte[2 * 1024];
var len = await steam.ReadAsync(buffer, 0, buffer.Length);
}