【Elixir】URIクエリパラメータを作る
Elixir でURIクエリパラメータを作るメモ
環境
- Elixir 1.14.2
Elixir の URI.encode_query
ElixirにはURIモジュールがあり、URLを操作するための機能を提供しています。その中でも、URI.encode_query/1は、クエリパラメータをエンコードするために便利なメソッドです。URI.encode_query
とは URI.encode_query/1
は、キーと値のペアから構成されるマップを受け取り、URLエンコードされた文字列を返します。
このエンコードは、クエリストリングの形式でURLに付与するために使用されます。
|
|
上記の例では、foo
と baz
の2つのキーとそれぞれに対応する値が含まれたマップを渡しています。
このマップは、foo=bar&baz=qux
という文字列に変換されています。
注意点
URI.encode_query/1
は、URLエンコードされた文字列を返しますが、クエリパラメータの生成には URI.encode_query/1
だけでは不十分な場合があります。
たとえば、クエリストリングに含める値がURLエンコードされている場合は、それを再度エンコードする必要があります。
|
|
上記の例では、fooの値がURLエンコードされた文字列であるため、URI.encode_query/1
によって再度エンコードされています。URI.encode_query/1
は、ElixirのURIモジュールで提供される機能の一つであり、クエリパラメータをエンコードするために便利なメソッドです。
ただし、注意点として、URLエンコードされた文字列を再度エンコードする必要があることがあります。