Byndyusoft.Net.Http.Formatting.MessagePack
release 0.3.0
此軟件包為system.net.http添加了對MessagePack格式和內容協商的支持
MessagePack是一種有效的二進制序列化格式。它使您可以在JSON(例如JSON)等多種語言之間進行數據交換。但是它更快,更小。小整數被編碼為單個字節,典型的短字符串除了本身之外,僅需要一個額外的字節。
Byndyusoft.Net.Http.Formatting.MessagePack實際上取決於Microsoft.Net.Http ,並使用MessagePack功能擴展了HttpClient ,您可能需要與ASP.NET Web API等靜止服務進行交談。
軟件包在System.Net.Http名稱空間中運行,並將一些方便的擴展方法添加到HttpClient和HttpContent中。
因此,例如:
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()
});
}
如果您只嘗試使用Microsoft.Net.Http ,則無法使用ReadAsAsync方法,並且您只能將內容讀取為原始數據,例如字節或字符串,並且必須進行序列化 /進行序列化序列化。
您還將獲得擴展方法,以MessagePack格式將 /發布回到服務,而無需自己操作:
// 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.MessagePack為了做出貢獻,您需要設置本地環境,請參閱先決條件。有關貢獻和工作流程指南,請參閱包裝開發生命週期。
有關如何貢獻的詳細概述可以在貢獻指南中找到。
確保您已經在開發機上安裝了以下所有先決條件:
src中實現軟件包邏輯tests中添加或添加或附加單位測試(與編碼之前和同時使用編碼)master分支