當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


erlang compose_query(QueryList, Options)用法及代碼示例


compose_query(QueryList, Options) -> QueryString
OTP 21.0
類型:
QueryList = [{unicode:chardata(), unicode:chardata() | true}]
Options = [{encoding, atom()}]
QueryString = uri_string() | error()

compose_query/1 相同,但附加了 Options 參數,用於控製編碼算法使用的編碼 ("charset")。有兩種支持的編碼: utf8 (或 unicode )和 latin1

條目名稱和值中無法使用所選字符編碼表示的每個字符都將替換為由 U+0026 與符號 (&)、"#" (U+0023) 字符、一個或多個 ASCII 組成的字符串代表以十為基數的字符的 Unicode 代碼點的數字,最後是 ";" (U+003B) 字符。

超出 0x2A、0x2D、0x2E、0x30 到 0x39、0x41 到 0x5A、0x5F、0x61 到 0x7A 範圍的字節采用百分比編碼(U+0025 百分比符號字符 (%) 後跟表示十六進製的大寫 ASCII 十六進製數字)字節的值)。

另請參閱相反的操作 dissect_query/1.

例子:

1> uri_string:compose_query([{"foo bar","1"},{"city","örebro"}],
1> [{encoding, latin1}]).
"foo+bar=1&city=%F6rebro"
2> uri_string:compose_query([{<<"foo bar">>,<<"1">>},
2> {<<"city">>,<<"東京"/utf8>>}], [{encoding, latin1}]).
<<"foo+bar=1&city=%26%2326481%3B%26%2320140%3B">>

相關用法


注:本文由純淨天空篩選整理自erlang.org大神的英文原創作品 compose_query(QueryList, Options) -> QueryString。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。