url_encode的用法

时间:2012-11-12 21:03:13

标签: urlencode

我尝试使用Ruby的url_encode(doc here。)

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

2 个答案:

答案 0 :(得分:2)

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

以下是SO搜索查询URL在编码后的外观示例:

  

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

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

一般情况下,您不能在整个网址上使用url_encode,或者您也会在普通网址中对特殊字符进行编码,例如://示例。

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

答案 1 :(得分:2)

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

查询字符串1:

valudA=john&valueB=john2

实际值服务器获取:

  • valueA:“john”

  • valueB:“john2”

url_encode 用于使键值对启用,以存储包含一些非ASCII编码字符的字符串,例如空格和特殊字符。

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

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

查询字符串2:

值a =约翰&安培; VALUEB =代码%204%20J

实际值服务器获取:

  • valueA:“john”
  • valueB:“code 4 j”