Go の HTTP パッケージを使用した POST リクエストのクエリ文字列へのアクセス
http パッケージを使用して Go で HTTP POST リクエストを操作する場合、次のような問題が発生する可能性があります。クエリ文字列パラメータにアクセスして解析する必要があるためです。明示的なドキュメントがないにもかかわらず、これは Request オブジェクトの Query() メソッドを通じて実現できます。
クエリ文字列パラメータの取得
クエリ文字列を抽出するための構文情報は次のようになります。
func (r *Request) Query() Values
Query() メソッドは、Values オブジェクトを返します。基本的にマップのような構造で、キーはパラメータ名、値は関連するパラメータ値を表す文字列の配列です。
使用例
POST を検討してください。 http://host:port/something?param1=b のようなクエリ文字列を含むリクエスト URL。 Query() メソッドを使用すると、次のようにクエリ文字列パラメータを取得できます。
func newHandler(w http.ResponseWriter, r *http.Request) { fmt.Println("GET params were:", r.URL.Query()) // Get a single parameter param1 := r.URL.Query().Get("param1") if param1 != "" { // Process the parameter } // Get all occurrences of a parameter param1s := r.URL.Query()["param1"] if len(param1s) > 0 { // Process the parameters } }
Values オブジェクトのキー (パラメータ名など) は大文字と小文字が区別されることに注意してください。
以上がGo の HTTP POST リクエストのクエリ文字列にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。