Golang Http請求返回結果處理

在 Go 中 Http 請求的返回結果為 *http.Response 類型,Response.Body 類型為 io.Reader,把請求結果轉化為Map需要進行一些處理。

寫一個公共方法來進行Response轉Map處理:

package util

import (
    "encoding/json"
    "net/http"
    "io/ioutil"
)

func ParseResponse(response *http.Response) (map[string]interface{}, error){
    var result map[string]interface{}
    body,err := ioutil.ReadAll(response.Body)
    if err == nil {
        err = json.Unmarshal(body, &result)
    }

    return result,err
}

然後就可以在請求後使用:

req := http.NewRequest("GET", "http://test.com", nil)
req.Header.Set("Content-type", "application/json")
client := &http.Client{}
response,err := client.Do(req)

if err == nil {
    // 解析Response
    returnMap,err := util.ParseResponse(response)
}

到此這篇關於Golang Http請求返回結果處理的文章就介紹到這瞭,更多相關Golang Http請求返回結果內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: