3

我尝试使用 Ruby 的 url_encode(此处为文档。)

它编码http://www.google.comhttp%3A%2F%2Fwww.google.com. 但事实证明,我无法通过浏览器打开后者。如果是这样,这个功能有什么用?当它编码的 URL 甚至无法打开时,它有什么用?

4

2 回答 2

2

例如,您可以使用url_encode对 GET 请求的键/值进行编码。

下面是一个 SO 搜索查询 URL 编码后的示例:

https://stackoverflow.com/questions/tagged/c%23+or+.net+or+asp.net

如您所见,url 编码似乎只应用于 URL 的最后一部分,在最后一个斜杠之后。

通常,您不能在整个 URL 上使用 url_encode,否则您还将对普通 URL 中的特殊字符进行编码,例如示例中的 ://。

您可以在此处查看解释其工作原理的教程:http ://www.permadi.com/tutorial/urlEncoding/

于 2012-11-12T21:20:58.637 回答
2

一个典型的用途是 HTTP GET方法,您需要一个查询字符串。

查询字符串 1:

valudA=john&valueB=john2

实际值服务器获取:

  • 值A:“约翰”

  • 价值B:“约翰2”

url_encode用于使键值对能够存储包含一些非 ASCII 编码字符(如空格和特殊字符)的字符串。

假设 valueB 将存储我的名字,代码 4 j,你需要对其进行编码,因为有一些空格。

url_encode("code 4 j")
code%204%20j

查询字符串 2:

值A=约翰&值B=代码%204%20j

实际值服务器获取:

  • 值A:“约翰”
  • 值B:“代码 4 j”
于 2012-11-12T21:29:45.023 回答