首頁 >後端開發 >Golang >如何修復 Microsoft Translator 中的「JSON 回應中無效的 UTF-8 位元組順序標記」?

如何修復 Microsoft Translator 中的「JSON 回應中無效的 UTF-8 位元組順序標記」?

Linda Hamilton
Linda Hamilton原創
2024-12-01 07:28:09684瀏覽

How to Fix

JSON 回應中的UTF-8 位元組順序標記無效

使用JSON 解碼Microsoft Translator 的回應時,遇到錯誤,指示無效字元。 JSON 訊息包含 Unicode 位元組順序標記 (BOM),由字元 ï'(ASCII 代碼 239)表示,這在解組時導致問題。

了解位元組順序標記

Unicode BOM 是一種特殊的字元序列,用於識別文字檔案的編碼。但是,這對於 JSON 響應來說不是必需的,並且可能會在解碼時導致複雜化。

解決問題

要處理無效字元錯誤,您需要刪除 BOM在解組 JSON 資料之前從回應中取得。這可以使用以下程式碼來實現:

body = bytes.TrimPrefix(body, []byte("\xef\xbb\xbf")) // Or []byte{239, 187, 191}

此行從回應正文的開頭刪除 BOM(如果存在),從而允許您正確解組 JSON 資料。

注意: 錯誤訊息「無效字符 ï' 尋找值的開頭」意味著 BOM 被解釋為 ISO-8859-1字符,導致解碼後的 JSON 中出現無效字符。

以上是如何修復 Microsoft Translator 中的「JSON 回應中無效的 UTF-8 位元組順序標記」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn