Go에서 문자열로 HTTP 응답에 액세스
Go에서 웹 요청을 검색할 때 문자열로 응답에 액세스하는 것이 때로는 어려울 수 있습니다. 최선의 노력에도 불구하고 응답을 문자열로 액세스하는 것은 어려울 수 있습니다. 이 문서에서는 응답 본문을 문자열로 가져오는 일반적인 문제를 살펴보고 string() 함수를 사용하여 솔루션을 제공합니다.
응답 본문을 검색하는 일반적인 접근 방식은 제공하신 코드 조각에 나와 있습니다. 그러나 for i:= 0;과 같은 간단한 루프를 사용하여 resp.Body에서 직접 문자열로 응답에 액세스합니다. 나는 < len(본문); i { fmt.Println( body[i] ) } 는 원하는 문자열이 아닌 ASCII 값을 나타내는 숫자를 인쇄합니다.
응답 본문을 문자열로 변환하려면 다음과 같이 string() 함수를 사용할 수 있습니다.
bs := string(body)
이 줄은 바이트 배열 본문을 문자열로 변환한 다음 일반 문자열로 사용할 수 있습니다. 이제 변수 bs는 응답 본문을 문자열로 보유하므로 이에 대해 문자열 작업을 수행할 수 있습니다.
자세한 설명을 위해 다음은 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) bs := string(body) // Converts the response body into a string fmt.Println(bs) // Log the string representation of the response body fmt.Println("done") }
이 업데이트된 코드에서 변수 bs에는 응답 본문이 문자열로 포함되어 있으며 이는 fmt.Println(bs)을 사용하여 기록됩니다. 이 수정된 코드를 실행하면 HTTP 응답의 문자열 표현이 인쇄됩니다.
위 내용은 Go에서 HTTP 응답 본문을 문자열로 쉽게 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!