Saya ingin mengurai respons permintaan web, tetapi saya mengalami masalah saat mengaksesnya sebagai string.
func main() {
resp, err := http.Get("http://google.hu/")
if err != nil {
// handle error
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
ioutil.WriteFile("dump", body, 0600)
for i:= 0; i < len(body); i++ {
fmt.Println( body[i] ) // This logs uint8 and prints numbers
}
fmt.Println( reflect.TypeOf(body) )
fmt.Println("done")
}
Bagaimana saya bisa mengakses respon sebagai string? ioutil.WriteFile
menulis dengan benar respons ke file.
Saya sudah memeriksa referensi paket tetapi tidak terlalu membantu.
sumber
http.StatusOK
sebagai pengganti nilai mentah200
!ioutil.ReadAll()
??Metode yang Anda gunakan untuk membaca respons tubuh http mengembalikan potongan byte:
dokumentasi resmi
Anda dapat mengonversi
[]byte
menjadi string dengan menggunakansumber
string (byteslice) akan mengubah potongan byte menjadi string, ketahuilah bahwa ini tidak hanya konversi tipe saja, tetapi juga salinan memori.
sumber