본문 바로가기
Programming/C# & .NET

[C#] The format of value 'application/json;charset=UTF-8' is invalid

by Kor-IT 2022. 5. 31.
반응형

최근 HttpClinet 로 수정중 해당 오류가 발생하게 되어 겪은 내용을 공유하고자 한다. 해당 문제는 생각보다? 쉬운 문제였다.  HttpClient의 'Contet-Type' 설정에서 'charset=UTF-8' 을 지원하지 않는다는 것이다.

 

Before > application/json;charset=UTF-8
After > application/json 

 

개인적인 생각으로 Bug 일 것같은 생각이 들지만 현재 상황에서는 위에 처럼 수정해서 사용해야 할 것 같다.

대략적으로 HttpClient 짠 코드를 같이 첨부해두겠다.

HttpRequestMessage 를 가지고 진행했으며 성공한 코드를 올려두었기때문에 만약, 참고해서 안된다면 댓글로 남겨주시면 도움을 드리겠습니다.

HttpClient httpClient = new HttpClient();

HttpRequestMessage requestMessage = new HttpRequestMessage()
{
    Method = Rt.GetHttpMethod()
    , RequestUri = new Uri("www.call.co.kr")
    , VersionPolicy = HttpVersionPolicy.RequestVersionOrLower
};

if(!String.IsNullOrEmpty(accept))
{
	httpClient.DefaultRequestHeaders.TryAddWithoutValidation("Accept", accept);
}

requestMessage.Content = new StringContent(Rt.RequestData, Encoding, contentType);

using (var response = await httpClient.PostAsync("www.call.co.kr", requestMessage.Content))
{
    Uf.MessageAdd(response.StatusCode.ToString());
    Uf.MessageAdd(await response.Content.ReadAsStringAsync());
}

 

 

 

 

[참고자료]

https://github.com/Azure/azure-functions-host/issues/670

 

System.Net.Http: The format of value 'application/json; charset=utf-8' is invalid. · Issue #670 · Azure/azure-functions-host

Repro steps Provide the steps required to reproduce the problem context.res = { headers : { "Content-Type" : "application/json; charset=utf-8" }, body : '{"foo":&q...

github.com

 

반응형

댓글