April 2022
Beginner to intermediate
464 pages
6h 44m
Japanese
ブラウザからのリクエストはほぼJSONになっているということは最初に説明しました。しかし、いくつかの状況では、以前から使われてきたリクエストの方式を扱う必要があります。
GETメソッド時のパラメーター(クエリー)
ファイルアップロードでのマルチパート形式
HTTPのGETメソッドのリクエストは、サーバーの状態を変えない、情報の取得を目的としたリクエストです。GETメソッドでボディの送信は非推奨となっており、リクエスト時に送信したいパラメーターはURLにクエリーの形式(クエリーパラメーターと言います)で付与します。GETメソッドでは、CDNで同一のURLには常に同じ内容を返すという設定ができ、同じパラメーターを持つリクエストはキャッシュされるため、システムの応答性を改善しやすいという特徴があります。
http://example.com/method?param1=value1¶m2=value2
無理やりエスケープすることでJSONを載せることはできますが、エスケープにより大幅に文字数が増えますし可読性も高くないため、メリットはあまりありません。
これらのパラメーターはhttp.RequestのFormValue()メソッドで取得できます。このメソッドはGETのパラメーター以外に、HTMLのフォーム送信(POSTメソッド)のapplication/x-www-form-urlencoded形式のリクエストで渡された情報も同じように取得できるため、一石二鳥なメソッドです。
なお、クエリーは同一のキーで複数の値を渡すことができますが、このメソッドでは1つの値のみを返します。もし複数の値を取得したい場合は、 ...
Read now
Unlock full access