cro*_*ile 2 uri elixir encodeuricomponent
寻找 Elixir 方法来编码 uri 组件,即
基本上我想要encode_query,但不必进行键值映射,并将空格编码为 %20,而不是 +javascript
encodeURI("&")
"&"
encodeURIComponent("&")
"%26"
Elixir
URI.encode("&")
"&"
pry(11)> URI.encode_query(%{k: " & "})
"+k=%26+"
找到解决方案,uri.encode的
def char_unescaped?(char) when char in 0..0x10FFFF do
char_reserved?(char) or char_unreserved?(char)
end
第二个参数有默认参数,通过传递char_unreserved,该函数现在将对保留字符进行编码
URI.encode(" & ", &URI.char_unreserved?(&1))
"%20%26%20"