在go語言中,HTTP接口的返回值往往是response類型的。但是,在實際開發中,我們需要將response轉換成json格式,以便于前端或其他需要使用json格式的接口處理。
通過go語言的json包,可以很方便地將response轉換為json格式。
import (
"encoding/json"
"net/http"
)
func handler(w http.ResponseWriter, r *http.Request) {
// 創建一個map類型的數據作為例子
data := map[string]string{
"name": "張三",
"age": "18",
}
// 將map類型的數據轉換為json格式
jsonData, err := json.Marshal(data)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
}
// 設置Content-Type為application/json,以便于前端或其他需要使用json格式的接口處理。
w.Header().Set("Content-Type", "application/json")
// 將json數據寫入response中
w.Write(jsonData)
}
上述代碼中,我們首先創建了一個map類型的數據作為例子。接著,我們將map類型的數據轉換為json格式,并設置Content-Type為application/json,以便于前端或其他需要使用json格式的接口處理。最后,我們將json數據寫入response中。
在實際開發中,我們還可以根據自己的需求在轉換json的過程中進行一些其他操作,例如:格式化json數據。
// 格式化json數據
jsonData, err := json.MarshalIndent(data, "", " ")
通過上面的代碼,我們可以很方便地將response轉換為json格式,并進行一些其他操作。這有助于我們更加靈活地處理HTTP接口的返回值。
上一篇go中json的使用
下一篇html小于號代碼