首頁 >後端開發 >Golang >如何在 Go 中以字串形式存取 HTTP 回應正文?

如何在 Go 中以字串形式存取 HTTP 回應正文?

DDD
DDD原創
2024-12-08 03:25:11514瀏覽

How to Access an HTTP Response Body as a String in Go?

在Go 中以字串形式存取HTTP 回應

在Go 中以字串形式存取HTTP 回應可以使用簡單的方法來實現。具體方法如下:

在您的範例程式碼中,問題在於回應正文的處理。要將其作為字串訪問,您需要使用字串函數將ioutil.ReadAll 傳回的位元組切片([]byte) 轉換為字串:

bs := string(body)

一旦獲得字串形式的回應正文,您可以像操作任何其他常規字串一樣操作它。以下是一個範例:

resp, err := http.Get("http://google.hu/")
if err != nil {
    // Handle error
}
defer resp.Body.Close()

body, err := io.ReadAll(resp.Body)
if err != nil {
    // Handle error
}

respString := string(body)
fmt.Println(respString) // Prints the response body as a string

if strings.Contains(respString, "html") {
    // Check if the response contains "html"
}

要注意的是,這種轉換不如直接使用位元組切片高效。如果您不需要專門以字串形式存取回應,最好將其保留為位元組切片並以這種形式使用它。

以上是如何在 Go 中以字串形式存取 HTTP 回應正文?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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