我在StackOverflow上看到了关于URL字符的以下内容:
您需要注意两组字符 - 保留和不安全。 保留字符为:
- &符号("
&
")- 美元("
$
")- 加号("
+
")- 逗号("
,
")- 正斜杠("
/
")- 冒号("
:
")- 分号("
;
")- 等于("
=
")- 问号("
?
")- '在'符号("
@
")。
通常认为不安全的人物是:
- space,
- 问号("
?
")- 小于和大于("
<>
&#34;)- 打开和关闭括号(&#34;
[]
&#34;)- 打开和关闭大括号(&#34;
{}
&#34;)- pipe(&#34;
|
&#34;)- 反斜杠(&#34;
\
&#34;)- 插入符号(&#34;
^
&#34;)- 代字号(&#34;
~
&#34;)- 百分比(&#34;
%
&#34;)- 磅(&#34;
#
&#34;)。
我正在尝试编写一个URL,以便我可以使用分隔符对其进行解析。但它们不能是数字或字母。有没有人有一个不保留但可以安全使用的字符列表?
感谢您提供的任何帮助。
答案 0 :(得分:4)
不要试图使用安全/未保留的字符。只需使用您想要的任何分隔符,并对整个事物进行URL编码。然后URL在另一端解码并正常解析。
您是否有理由不能仅使用标准分隔符作为URL参数(&amp;)?这是最简单的方法,而不是试图自己动手。
例如,标准URL语法本身已经允许多值参数。这是完全合法的,不需要任何诡计。
Somepage.aspx?parameterName=A¶meterName=B
结果是页面将在parameterName属性中传递“A,B”。