프로그래밍/Flutter
[Flutter] http 사용시에 리턴되는 한글 값이 깨질경우 해결
웰치스짱
2023. 2. 20. 18:11
반응형
외부 API데이터를 가져오는데 사용하는 http 라이브러리에서 리턴되는 값이 한글일때 깨지는 경우 아래와 같이 기존 코드를 수정하여 처리하면 잘 나온다.
final response = await http
.post('https://targeturl.pr.kr', body: {'userid' : userid.text, 'userpw' : userpw.text})
.timeout(Duration(seconds: 3));
if (response.statusCode == 200) {
print('데이터 수신 ' + response.contentLength.toString() + 'byte');
print(response.body); // 한글 깨짐
print(utf8.decode(response.bodyBytes)); // 한글이 깨지는 문제를 해결
}
사용전
I/flutter ( 6155): {"channel":{"total":100,"num":15,"title":"ì°ë¦¬ë§ì ê°ë° ì§ì(Open API) - ì¬ì ì´í ê²ì","start":1,"description":"ì°ë¦¬ë§ì ê°ë° ì§ì(Open API) - ì¬ì ì´í ê²ì ê²°ê³¼","link":"http://opendict.korean.go.kr","item":[{"word":"í¸êµ¬","sense":[{"cat":"","definition":"ê´ì´, ì½, ì ì¤ë, ì°½ ë°ìì ì ë¶ë¶ì ì루를 ë°ëë¡ ë§ë íµ. âê·ë² í기ë âê´´íµâì´ë¤.","link":"http://opendict.korean.go.kr/dictionary/view?sense_no\u003d513358","origin":"","sense_no":1,"target_code":513358,"type":"","pos":"ëª
ì¬"}]},{"word":"í¸êµ¬","sense":[{"cat":"","definition":"í¸ì ì ì§ì ìí¨ì ì구 ì.","link":"http://opendict.korean.go.kr/dictionary/view?sense_no\u003d320618","origin":"æ¶å£","sense_no":2,"target_c
사용후
I/flutter ( 6155): {"channel":{"total":3,"num":3,"title":"우리말샘 개발 지원(Open API) - 사전 어휘 검색","start":1,"description":"우리말샘 개발 지원(Open API) - 사전 어휘 검색 결과","link":"http://opendict.korean.go.kr","item":[{"word":"호갱","sense":[{"cat":"","definition":"어수룩하여 이용하기 좋은 손님을 낮잡아 이르는 말.","link":"http://opendict.korean.go.kr/dictionary/view?sense_no\u003d1368306","origin":"←虎客","sense_no":1,"target_code":1368306,"type":"","pos":"명사"}]},{"word":"호갱-님","sense":[{"cat":"","definition":"‘호갱’을 놀림조로 이르는 말.","link":"http://opendict.korean.go.kr/dictionary/view?sense_no\u003d1403142","origin":"←虎客님","sense_no":2,"target_code":1403142,"type":"","pos":"명사"}]},{"word":"호갱이","sense":[{"cat":"","definition":"‘솔개’의 방언","link":"http://opendict.korean.go.kr/dictionary/view?sense_no\u003d778779","origin":"","sense_no":1,"target_code":778779,"type":"방언","pos":"명사"}]}]}}
반응형