ホームページ >バックエンド開発 >Golang >Go で HTTP レスポンスボディを文字列に変換するにはどうすればよいですか?

Go で HTTP レスポンスボディを文字列に変換するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-02 16:34:16646ブラウズ

How to Convert an HTTP Response Body to a String in Go?

Go で文字列として HTTP 応答にアクセスする

Go で Web リクエストの応答を文字列として解析しようとすると、応答がバイトのスライスとして保存されるため、問題が発生します。この問題を解決し、文字列として応答にアクセスするには、以下の手順に従います。

1. HTTP 応答本文を読み取ります:

func main() {
    resp, err := http.Get("http://google.hu/")
    if err != nil {
        // handle error
    }
    defer resp.Body.Close()

    bodyBytes, err := io.ReadAll(resp.Body)
    if err != nil {
        // handle error
    }
}

2.バイト スライスを文字列に変換します:

バイトのスライスを文字列に変換するには、型変換を使用できます:

bodyString := string(bodyBytes)

3。文字列を利用する:

バイト スライスを文字列に変換したら、Go で通常の文字列として操作できます。たとえば、コンソールに出力したり、文字列操作を実行したりできます。

例:

fmt.Println(bodyString)

このコードは、応答本文を文字列として出力します。

注:

変換は次の点に注意することが重要です。 Go での文字列へのバイト スライスには、文字列の不変性のため、ヒープ上にメモリを割り当てる必要があります。したがって、メモリ効率を高めるために、バイト スライスを文字列に変換する前に、できる限りバイト スライスに対して操作を実行することをお勧めします。

以上がGo で HTTP レスポンスボディを文字列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。