Gostaria de analisar a resposta de uma solicitação da web, mas estou tendo problemas para acessá-la como 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")
}
Como posso acessar a resposta como string? ioutil.WriteFile
grava corretamente a resposta em um arquivo.
Já verifiquei a referência do pacote, mas não é realmente útil.
fonte
http.StatusOK
vez do200
valor bruto !ioutil.ReadAll()
??O método que você está usando para ler a resposta do corpo http retorna uma fatia de byte:
documentação oficial
Você pode converter
[]byte
para uma string usandofonte
string (byteslice) irá converter a fatia de byte em string, apenas saiba que não é apenas uma simples conversão de tipo, mas também uma cópia de memória.
fonte