Elixir语言中 URI.decode_query
相关用法介绍如下。
用法:
decode_query(query, map \\ %{}, encoding \\ :www_form)
@spec decode_query(binary(), %{optional(binary()) => binary()}, :rfc3986 | :www_form) ::
%{
optional(binary()) => binary()
}
将query
解码为Map。
给定 key1=value1&key2=value2...
形式的查询字符串,此函数将查询字符串中的每个键值对作为给定 map
中的一个条目插入。结果映射中的键和值将是二进制文件。键和值将是percent-unescaped。
您可以指定以下 encoding
选项之一:
-
:www_form
-(默认,自 v1.12.0 起)键和值按照decode_www_form/1
-
:rfc3986
-(自 v1.12.0 起)键和值按照decode/1
:www_form
相同,只是将 "+" 与 RFC 3986 保持一致。
为了向后兼容,编码默认为:www_form
。
如果要手动迭代每个值,请使用
。query_decoder/1
例子
iex> URI.decode_query("foo=1&bar=2")
%{"bar" => "2", "foo" => "1"}
iex> URI.decode_query("percent=oh+yes%21", %{"starting" => "map"})
%{"percent" => "oh yes!", "starting" => "map"}
iex> URI.decode_query("percent=oh+yes%21", %{}, :rfc3986)
%{"percent" => "oh+yes!"}
相关用法
- Elixir URI.decode_www_form用法及代码示例
- Elixir URI.decode用法及代码示例
- Elixir URI.default_port用法及代码示例
- Elixir URI.encode_query用法及代码示例
- Elixir URI.parse用法及代码示例
- Elixir URI.new用法及代码示例
- Elixir URI.merge用法及代码示例
- Elixir URI.new!用法及代码示例
- Elixir URI.encode_www_form用法及代码示例
- Elixir URI.char_reserved?用法及代码示例
- Elixir URI.query_decoder用法及代码示例
- Elixir URI.char_unescaped?用法及代码示例
- Elixir URI.to_string用法及代码示例
- Elixir URI.char_unreserved?用法及代码示例
- Elixir URI.encode用法及代码示例
- Elixir StringIO.flush用法及代码示例
- Elixir Calendar.ISO.date_to_string用法及代码示例
- Elixir Enum.unzip用法及代码示例
- Elixir Date.add用法及代码示例
- Elixir Keyword.get用法及代码示例
- Elixir Stream用法及代码示例
- Elixir Registry.count_match用法及代码示例
- Elixir List.keyfind!用法及代码示例
- Elixir Integer.pow用法及代码示例
- Elixir NaiveDateTime用法及代码示例
注:本文由纯净天空筛选整理自elixir-lang.org大神的英文原创作品 URI.decode_query(query, map \\ %{}, encoding \\ :www_form)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。