>  기사  >  백엔드 개발  >  golang 웹 개발 시 잘못된 코드의 원인과 해결 방법

golang 웹 개발 시 잘못된 코드의 원인과 해결 방법

尚
원래의
2019-12-12 09:44:483353검색

golang 웹 개발 시 잘못된 코드의 원인과 해결 방법

golang의 기본 인코딩은 utf-8이지만 웹페이지에는 일반적인 "gb2312", "gbk" 등 다양한 형식이 있습니다. 이러한 인코딩된 웹 페이지를 처리할 때 큰 왜곡된 문자가 나타납니다. Golang에는 자체 인코딩 및 디코딩 패키지가 없으므로 타사 패키지의 도움을 받아 처리해야 합니다. 추천: golang 튜토리얼

타사 패키지

code.google.com/p/mahonia

사용 소개

코드는 Google 서버에서 호스팅되는 것 같습니다. github A mahonia.

먼저 원하는 인코딩 형식이 지원되는지 확인하세요. 그렇지 않으면 반환 값은 nil

func GetCharset(name string) *Charset

if mahonia.GetCharset(char) == nil {

    return nil, fmt.Errorf("%s charset not suported \n", char)}

특정 인코딩 형식에 대한 디코더 만들기

func NewDecoder(name string ) Decoder

dec := mahonia.NewDecoder(char)

그런 다음 직접 디코딩합니다. 일반적으로 사용되는 것은 문자열에서 직접 디코딩하고 io stream

func(d Decoder) ConvertString(s string) string
func(d Decoder) NewReader(rd io)입니다. .Reader) *Reader

여기에서는 io 흐름이 사용됩니다. 왜냐하면 일관된 프레젠테이션을 용이하게 하기 위해 아래에서 jquery와 유사한 툴킷도 사용되기 때문입니다

rd := dec.NewReader(resp.Body)

위 내용은 golang 웹 개발 시 잘못된 코드의 원인과 해결 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.