golangでヘッダーを出力する方法

PHPz
リリース: 2023-05-10 17:36:37
オリジナル
1091 人が閲覧しました

Go 言語では、net/http パッケージの Header タイプと http.Header() 関数を使用してヘッダーの印刷を実装できます。 golangがヘッダーを出力する具体的な操作を紹介します。

まず、net/http パッケージをインポートする必要があります。このパッケージは、HTTP クライアントとサーバーの実装を含む、golang の標準ライブラリです。

import (
    "net/http"
    "fmt"
)
ログイン後にコピー

次に、http リクエスト オブジェクトを作成し、そのリクエストを特定の URL に送信します。

resp, err := http.Get("http://www.example.com")
if err != nil {
    // 请求发生错误
}
ログイン後にコピー

ここでは、http.Get() 関数を通じて、指定された URL に GET リクエストを送信します。アドレスを取得し、応答を resp オブジェクトに保存します。次に、resp オブジェクトを通じてヘッダー情報を取得できます。

header := resp.Header
fmt.Println(header)
ログイン後にコピー

resp.Header は、HTTP 応答ヘッダー内のキーと値のペアを含むヘッダー タイプのオブジェクトです。 fmt.Println() 関数を呼び出すと、応答ヘッダーの内容を出力できます。

resp.Header の使用に加えて、http.Header() 関数を通じて新しい Header オブジェクトを作成し、それにキーと値のペアを追加することもできます。

header := http.Header{}
header.Add("Content-Type", "application/json")
header.Add("Authorization", "Bearer xxxxxxxx")
fmt.Println(header)
ログイン後にコピー

ここでは、新しい Header オブジェクトを作成し、Add() 関数を使用して 2 つのキーと値のペア「Content-Type」と「Authorization」を追加します。次に、 fmt.Println() 関数を使用して、新しい Header オブジェクトを出力することもできます。

実際の開発では、他のサードパーティ ライブラリを使用してヘッダーを処理することもできます。たとえば、github.com/golobby/httpheader を使用してヘッダーを生成および解析します。このライブラリは、ヘッダーを追加、削除、取得、設定するための豊富な関数を提供します。以下は、ライブラリのサンプル コードです。

import (
    "github.com/golobby/httpheader"
    "fmt"
)

header := httpheader.New(map[string][]string{
    "Content-Type": {"application/json"},
    "Authorization": {"Bearer xxxxxxxx"},
})
fmt.Println(header.Headers())
ログイン後にコピー

ここでは、httpheader.New() 関数を呼び出して新しい Header オブジェクトを作成し、その値に 2 つのキー「Content-Type」と「Authorization」を追加します。ペア。 Headers() 関数を呼び出すと、Header オブジェクトを http.Header 型に変換できるため、net/http パッケージを使用して HTTP リクエストを送信できるようになります。

概要:

ヘッダーの印刷は、golang における非常に単純な操作です。 resp.Header を使用して応答ヘッダー情報を取得し、 fmt.Println() 関数を呼び出してそれを出力できます。また、 http.Header() 関数を使用して新しい Header オブジェクトを作成し、Add() 関数を使用することもできます。キーと値のペアを追加します。より豊富なヘッダー処理が必要な場合は、github.com/golobby/httpheader などのサードパーティ ライブラリを使用することもできます。

以上がgolangでヘッダーを出力する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート