Este pacote adiciona suporte para formatação do MessagePack e negociação de conteúdo para system.net.http
MessagePack é um formato de serialização binária eficiente. Permite trocar dados entre vários idiomas como o JSON. Mas é mais rápido e menor. Pequenos números inteiros são codificados em um byte único, e as cordas curtas típicas requerem apenas um byte extra, além das próprias cordas.
Byndyusoft.Net.Http.Formatting.MessagePack Na verdade, depende do Microsoft.Net.Http e estende o HttpClient com os recursos MessagePack que você provavelmente precisará conversar com um serviço repousante, como a API da Web ASP.NET.
O pacote opera no espaço de nome System.Net.Http e adiciona alguns métodos úteis de extensão ao HttpClient e HttpContent .
Por exemplo:
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/x-msgpack"));
var response = await client.GetAsync("http://localhost/api/products/1");
response.EnsureSuccessStatusCode();
var product = await response.Content.ReadAsAsync<ProductInfo>(new[]
{
new MessagePackMediaTypeFormatter()
});
}
Se você tentasse usar apenas Microsoft.Net.Http , o método ReadAsAsync não estaria disponível para você, e você só poderá ler o conteúdo como dados brutos, como bytes ou string, e precisará fazer a serialização / desarrialização de si mesmo.
Você também obtém métodos de extensão para colocar / postar de volta ao serviço no formato MessagePack sem ter que fazer isso você mesmo:
// Save the ProductInfo model back to the API service
await client.PutAsMessagePackAsync("http://localhost/api/products/1", product);
await client.PostAsMessagePackAsync("http://localhost/api/products/1", product);
dotnet add package Byndyusoft.Net.Http.Formatting.MessagePackPara contribuir, você precisará configurar seu ambiente local, consulte os pré -requisitos. Para o guia de contribuição e fluxo de trabalho, consulte o ciclo de vida do desenvolvimento de pacotes.
Uma visão geral detalhada sobre como contribuir pode ser encontrada no guia contribuinte.
Certifique -se de instalar todos os seguintes pré -requisitos em sua máquina de desenvolvimento:
srctestsmaster do projeto