HTML链接和Web书写URL之处理保留字符和不安全字符

除了那些无法显示的字符外,还需要在URL中对那些保留(reserved)字符和不安全(unsafe)字符进行编码。


   所谓保留字符就是那些在URL中具有特定意义的字符。例如,在URL中用于分隔路径名中各元素的斜线字符。

 

   如果需要在URL中包含一个斜线,而不希望将该斜线当作分隔符使用,那么可以将其编码为%2F(注3):

 

   http://www.calculator.com/compute?3%2f4

 

   在上面的示例中,该URL实际会引用www.calculator.com的服务器上名为compute的资源,并将用问号(?)描述的字符串“3/4”传递给该资源。

 

   在这里,估计该资源可能是一个能够执行运算功能的服务器端程序,它可以接收传递来的值,并返回一个结果。

 

   不安全字符是指那些在URL中没有特殊含义,但在URL所在的上下文中可能具有特殊意义的字符。

 

   例如双引号("")在标签中用于限定URL的属性值。如果您想要在URL中直接包括双引号,那么可能会令浏览器感到困惑。

 

   因此,应该使用双引号的编码%22,以避免任何可能的冲突。

 

   其他保留字符和不安全字符也应该始终使用它们的编码。这些字符如下所示。

 

   保留字符和不安全字符及其URL编码


   字符:;、描述:分号、用法:保留、编码:%3B

   字符:/ 、描述:斜线、用法:保留、编码:%2F
   字符:? 、描述:问号、用法:保留、编码:%3F
   字符:: 、描述:冒号、用法:保留、编码:%3A
   字符:@ 、描述:"at"符号、用法:保留、编码:%40
   字符:= 、描述:等号、用法:保留、编码:%3D
   字符:& 、描述:“和”符号、用法:保留、编码:%26
   字符:< 、描述:小于号、用法:不安全、编码:%3C
   字符:> 、描述:大于号、用法:不安全、编码:%3E
   字符:" 、描述:双引号、用法:不安全、编码:%22
   字符:% 、描述:百分号、用法:不安全、编码:%25
   字符:{ 、描述:左大括号、用法:不安全、编码:%7B
   字符:} 、描述:右大括号、用法:不安全、编码:%7D
   字符:| 、描述:竖线、用法:不安全、编码:%7C   
   字符:\ 、描述:反斜线、用法:不安全、编码:%5C
   字符:^ 、描述:加子号、用法:不安全、编码:%5E
   字符:~ 、描述:波浪号、用法:不安全、编码:%7E
   字符:[ 、描述:左中括号、用法:不安全、编码:%5B
   字符:] 、描述:右中括号、用法:不安全、编码:%5D
   字符:` 、描述:反单引号、用法:不安全、编码:%60


   通常情况下,如果对某个字符能否在URL中使用有疑问,那么您应该始终使用该字符的编码。

 

   除字母、数字和字符\$-_.+!*'()外的其他所有字符都应该使用编码。这是一条很重要的经验。

 

   使用字符编码绝不会出错,除非该字符在URL中有特定的意义。

 

   例如,在http URL中的斜线编码会使斜线成为一个普通的字符,而不是一个分隔URL的路径名分隔符。

 

   注3:十六进制编号是基于16个字符的:从0到9和从A到F,它们的值相当于十进制的O~15。

 

   同样,用于这些扩展值的字母并不区分大小写,例如,“a”(等于十进制的10) 和“A”是一样时。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值