본문 바로가기
[개발] 이야기/[DotNet] 이야기

c# httpclient header Accept, ContentType set - 설정하기

by 헤이나우
반응형

c# 에서 api나 http통신을 할 때 httpclient를 사용하실겁니다. (완전편합)

httpclient에서 acceptsms client의 DefaultRequestHeader에서 설정할 수 있는 반면에 ContentType은 보낼 메시지가 있을때 HttpRequestMessage객체의 콘텐츠 타입의 헤더에 설정 할 수 있습니다.

 

좀더 구분이 또렸하게 잘 정리해 놨네요

 

하지만 이 설정을 햇갈려서 다른나 key, value형태로 설정하게 된다면 에러가 나올 수 있습니다. 잘 확인하시고 설정바랍니다.

 

아래는 Accept, ContentType를 설정하는 예시 입니다.

using (var client = new HttpClient())
            {
                client.DefaultRequestHeaders.Add("Authorization", $"{token.Schema} {token.AccessToken}");
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                HttpRequestMessage requestMessage = new HttpRequestMessage(new HttpMethod("POST"), $"https://sms.supersms.co:7020/sms/v3/multiple-destinations");
                requestMessage.Content = new StringContent(@"
{""title"":""test""}
");
                requestMessage.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                await client.SendAsync(requestMessage);

            }

넵 이상 짧은글 읽어주셔서 감사드립니다.!

반응형

댓글