Я хочу проанализировать ответ на веб-запрос, но у меня возникают проблемы с доступом к нему как к строке.
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")
}
Как мне получить доступ к ответу в виде строки? ioutil.WriteFile
правильно пишет ответ в файл.
Я уже проверил ссылку на пакет, но это не очень полезно.
источник
http.StatusOK
вместо сырого200
значения!ioutil.ReadAll()
??Метод, который вы используете для чтения ответа HTTP, возвращает байтовый фрагмент:
официальная документация
Вы можете преобразовать
[]byte
в строку, используяисточник
string (byteslice) преобразует байтовый фрагмент в строку, просто знайте, что это не только преобразование типов, но и копирование памяти.
источник