Me gustaría analizar la respuesta de una solicitud web, pero tengo problemas para acceder a ella como una cadena.
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")
}
¿Cómo puedo acceder a la respuesta como cadena? ioutil.WriteFileescribe correctamente la respuesta en un archivo.
Ya revisé la referencia del paquete, pero no es realmente útil.
fuente

http.StatusOKlugar del200valor bruto !ioutil.ReadAll()?El método que está utilizando para leer la respuesta del cuerpo http devuelve un segmento de bytes:
documentación oficial
Puede convertir
[]bytea una cadena usandofuente
string (byteslice) convertirá el segmento de bytes en una cadena, solo sepa que no es solo una conversión de tipo, sino también una copia de memoria.
fuente