MySQL 데이터베이스와 통신하는 golang 웹 서버가 있습니다. 사용자는 댓글을 게시 할 수 있으며이 댓글에는 다른 utf8mb4 문자 사이에 그림이 포함될 수 있습니다. 내 데이터베이스는 이모티콘 문자를 저장하고 검색 할 수 있지만 JSON 마샬링/언 마샬링, 이모티콘이 엉망이 될 때 사용할 수 있습니다. Go의 네이티브 인코딩/json 패키지를 사용하여 utf8mb4 문자를 디코딩/인코딩 할 수 있습니까? 그렇다면 어떻게해야할까요? 미리 감사드립니다!Golang JSON 마샬링 이모티콘을 물음표로 변환
1
A
답변
0
결국 해결 방법을 찾을 수있었습니다. 이전에는 JSON을 [] 바이트로 마샬링 한 다음 http.ResponseWriter에서 w.Write (jsonBytes)를 호출했습니다. 바이트를 문자열로 캐스팅하고 적절한 내용 유형 헤더를 작성하고 대신 io.WriteString을 사용하여 맹 글링을 막을 수있었습니다. 여기 내 코드는 다음과 같습니다.
returnJSON, error := json.Marshal(value)
if error != nil { Error(w, error); return }
w.Header().Set("Content-Type", "application/json; charset=utf-8")
io.WriteString(w, string(returnJSON))
+0
'charset = utf-8 "문자열에 전달할 필요가 없음 :) 'w.Header(). Set ("Content-Type ","application/json; charset = utf-8 ")' –
관련 문제
- 1. golang : JSON으로 마샬링 [] os.FileInfo
- 2. 복잡한 JSON을 GoLang 객체로 마샬링
- 3. 유로 기호가 물음표로 변환
- 4. golang 경쟁 조건 - 2 goroutines에서 XML 마샬링
- 5. Json 텍스트를 물음표로 구문 분석
- 6. 아포스트로피가 텍스트 뷰의 물음표로 변환
- 7. Jackson Json, ByteBuffer를 마샬링
- 8. JSON golang boolean omitempty
- 9. golang JSON RPC authorization
- 10. unmarshaljson에서 golang 유형 변환
- 11. Golang : 조각을지도로 변환
- 12. json http 응답의 마샬링 해제
- 13. JAXB를 사용하여 Java 클래스에 JSON 마샬링/언 마샬링
- 14. Golang JSON Unmarshal 연재 번호
- 15. Unmarshal json 선택 요소 Golang
- 16. Golang, 임베디드 구조체를 배열로 변환
- 17. golang
- 18. Golang to Json, Google 차트 작성
- 19. 스칼라에서 XML 마샬링/언 마샬링
- 20. iPhone에서 이모티콘을 Android로 보내기
- 21. Golang : 구조체 조각 사이의 형식 변환
- 22. 개체 목록 (Java, JSON/Jackson)이 포함 된 개체를 JSON 마샬링/언 마샬링
- 23. golang SQL 문자열 변환 검색 오류
- 24. Golang
- 25. POJO에 JSON 마샬링 클래스 이름 포함
- 26. 마샬링 할 때 JSON 태그 무시
- 27. Golang Function지도에서 호출
- 28. 마샬링 []
- 29. JSON JSON 변환
- 30. json 응답으로 배열을 설정하는 방법 goLang-gin
값을 [] 바이트로 마샬링하고 인코딩이 전혀 걱정할 수 있습니까? – JimB
맹 글링의 예를 포함 할 수 있습니까? – Snowman
@ JimB의 제안은 아마 당신을 위해 얻을 것만 큼 좋을 것입니다. 귀하의 질문을 읽은 후 json 패키지를 검토하는 데 몇 분을 보냈습니다. 어쨌든 인코딩을 'utf8mb4'로 지정할 수 있습니다. – evanmcdonnal