使用http.Get函數發送GET請求並取得回應狀態碼及回應內容長度
在Go語言中,我們可以使用http套件提供的http.Get函數來傳送GET請求。透過GET請求,我們可以取得到服務端回傳的回應狀態碼以及回應內容的長度。下面讓我們一起來看看具體的實作過程。
首先,在我們的Go程式碼中,需要匯入net/http套件來使用http.Get函數。程式碼如下所示:
package main import ( "fmt" "net/http" ) func main() { // 发送GET请求 resp, err := http.Get("http://www.example.com") if err != nil { fmt.Println("发送GET请求失败:", err) return } defer resp.Body.Close() // 获取响应状态码 statusCode := resp.StatusCode fmt.Println("响应状态码:", statusCode) // 获取响应内容长度 contentLength := resp.ContentLength if contentLength == -1 { fmt.Println("响应内容长度未知") } else { fmt.Println("响应内容长度:", contentLength) } }
在上面的程式碼中,我們透過http.Get函數發送了一個GET請求到"http://www.example.com",並將回應結果賦值給resp變量。同時,我們使用defer關鍵字來確保在函數返回之前關閉回應Body,以防資源洩漏。
接著,我們使用resp.StatusCode來取得回應狀態碼,並列印出來。回應狀態碼表示了服務端對請求的處理結果,它通常是一個三位數的整數,例如200表示請求成功,404表示頁面未找到。
最後,我們使用resp.ContentLength來取得回應內容的長度,並列印出來。 ContentLength傳回的是int64類型的值,表示了回應內容的大小。需要注意的是,有些服務端可能不會在回應頭中提供Content-Length字段,這種情況下ContentLength會傳回-1,表示回應內容長度未知。
透過以上程式碼,我們可以發送GET請求並取得到回應狀態碼及回應內容長度。你可以根據需要對程式碼進行修改,以適應自己的實際需求。希望本文對你有幫助!
以上是使用http.Get函數發送GET請求並取得回應狀態碼及回應內容長度的詳細內容。更多資訊請關注PHP中文網其他相關文章!