ホームページ > バックエンド開発 > Golang > Go で GET リクエストのクエリ文字列を効率的に作成するにはどうすればよいですか?

Go で GET リクエストのクエリ文字列を効率的に作成するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-28 17:39:09
オリジナル
672 人が閲覧しました

How Can I Efficiently Build Query Strings for GET Requests in Go?

Go での GET リクエストのクエリ文字列の構築

Go での GET リクエストのクエリ文字列の構築は、他の一般的なプログラミング言語よりも少し複雑になる場合があります。クエリ パラメーターを動的に追加するには、net/url パッケージの Values タイプとその Encode メソッドを利用できます。その方法は次のとおりです。

package main

import (
    "fmt"
    "log"
    "net/http"
    "os"
    "net/url"
)

func main() {
    req, err := http.NewRequest("GET", "http://api.themoviedb.org/3/tv/popular", nil)
    if err != nil {
        log.Fatal(err)
    }

    q := req.URL.Query()
    q.Add("api_key", os.Getenv("API_KEY"))
    q.Add("another_thing", "foo & bar")
    req.URL.RawQuery = q.Encode()

    fmt.Println(req.URL.String())
}
ログイン後にコピー

url.Values を使用すると、複数のクエリ パラメーターを簡単に追加できます。 Encode メソッドは値を自動的に URL エンコードし、リクエスト URL を有効にします。

このスクリプトを実行すると、次のような文字列が出力されます。

http://api.themoviedb.org/3/tv/popular?another_thing=foo+%26+bar&api_key=your_api_key
ログイン後にコピー

クエリ文字列を構築するためのこの構造化されたアプローチにより、動的パラメータ化により、変数入力やさまざまなリクエスト シナリオの処理が容易になります。 net/url パッケージを活用すると、Go で複雑な GET リクエストを効率的に構築できます。

以上がGo で GET リクエストのクエリ文字列を効率的に作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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