解決Go 中的JSON 回應問題:綜合指南
在本文中,我們將深入研究在Go 中建立JSON 回應時遇到的問題去探索解決方案。
問題陳述:
開發人員在建立簡單的 HTTP 伺服器和處理 JSON 回應時遇到問題。儘管使用與在線找到的範例類似的程式碼,但還是傳回了內容類型為「text/plain」的空響應。
分析:
仔細比較開發人員的程式碼和工作範例揭示了一個微妙的差異:回應主體結構中的變數在開發人員的程式碼中沒有大寫。這會阻礙 JSON 編組過程,因為 Go 需要匯出結構體欄位名稱(大寫)才能序列化為 JSON。
解:
解決此問題問題是,ResponseCommands 結構體中的變數必須大寫,如下所示:
<code class="go">type ResponseCommands struct { Key string Value bool }</code>
透過此修改,Go 將正確識別結構體欄位並將它們序列化為JSON。產生的回應現在將包含預期的 JSON 數據,並且內容類型標頭將正確設定為“application/json”。
以上是為什麼我的 Go HTTP 伺服器會傳回內容類型為「text/plain」的空響應?的詳細內容。更多資訊請關注PHP中文網其他相關文章!