이 패키지는 System.net.http에 MessagePack 형식 및 컨텐츠 협상에 대한 지원을 추가합니다.
MessagePack은 효율적인 이진 직렬화 형식입니다. JSON과 같은 여러 언어로 데이터를 교환 할 수 있습니다. 그러나 더 빠르고 작습니다. 작은 정수는 단일 바이트로 인코딩되며 일반적인 짧은 줄은 문자열 자체 외에 하나의 여분의 바이트 만 필요합니다.
Byndyusoft.Net.Http.Formatting.MessagePack 실제로 Microsoft.Net.Http 에 따라 다르며 Asp.net Web API와 같은 편안한 서비스와 대화해야 할 MessagePack 기능으로 HttpClient 확장합니다.
패키지는 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 에서 단위 테스트 (이전 및 동시에 코딩과 동시에 선호) 추가 또는 AddAptmaster 브랜치를 타겟팅하십시오