资讯专栏INFORMATION COLUMN

URL的编码或解码方法

junbaor / 3332人阅读

摘要:的四个编码解码方法将元字符和语义字符之外的字符都进行转义,一般用于知道该只用于完整的时使用将除了语义字符之外的字符进行转义,包括元字符,因此,它的参数通常是的路径或参数值,而不是整个。还原转义后的片段。

URL的合法字符

URL的合法字符表示再浏览器的地址栏中不会被转义的字符,有两种:

URL元字符:分号(;),逗号(’,’),斜杠(/),问号(?),冒号(:),at(@),&,等号(=),加号(+),美元符号($),井号(#)

语义字符:a-z,A-Z,0-9,连词号(-),下划线(_),点(.),感叹号(!),波浪线(~),星号(*),单引号(),圆括号(()`)

当输入的字符不符合以上的字符时,浏览器就会把该字符转义,规则:根据操作系统的默认编码,将每个字节转为百分号(%)加上两个大写的十六进制字母。
比如:当再浏览器地址栏中输入www.baidu.com/q=你好时,会被转义成例如www.baidu.com/q=%E6%98%A5%E8%8A%82类似的字符串,浏览器才会读取。

JavaScript的四个URL编码/解码方法: encodeURI

将元字符和语义字符之外的字符都进行转义,一般用于知道该URL只用于完整的URL时使用

encodeURIComponent

将除了语义字符之外的字符进行转义,包括元字符,因此,它的参数通常是URL的路径或参数值,而不是整个URL。
比如说,要在谷歌中搜索www.baidu.com/q=5&name时,若使用encodeURI,&字符并不会被转义,从而改变其真正的URL。

decodeURI

还原转义后的URL,是encodeURI方法的逆运算。

decodeURIComponent

还原转义后的URL片段。是encodeURIComponent方法的逆运算。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/93180.html

相关文章

  • 深入分析 Java Web 中中文编码问题

    摘要:文章首发地址深入分析中的中文编码问题背景编码问题一直困扰着程序开发人员,尤其是在中更加明显,因为是跨平台的语言,在不同平台的编码之间的切换较多。 文章首发地址:深入分析 Java Web 中的中文编码问题 背景: 编码问题一直困扰着程序开发人员,尤其是在 Java 中更加明显,因为 Java 是跨平台的语言,在不同平台的编码之间的切换较多。接下来将介绍 Java 编码问题出现的根本原...

    jsyzchen 评论0 收藏0
  • 乐字节-Java8新特性之Base64和重复注解与类型注解

    摘要:上一篇小乐给大家说了乐字节新特性之,接下来小乐继续给大家说一说新特性之和重复注解与类型注解。内部类与方法相关的内部类这是一个静态类。也是一个静态类。 上一篇小乐给大家说了《乐字节-Java8新特性之Date API》,接下来小乐继续给大家说一说Java8新特性之Base64和重复注解与类型注解。 一、Base64 在Java 8中,内置了Base64编解码相关的特性。Java 8中使用...

    1treeS 评论0 收藏0
  • URI编解码详解encodeURIComponent、encodeURI

    摘要:可选项目,一般使用隔开或隔开的键值对可选项目包,其它额外的标识信息和的不同这和长得也很相似,是的缩写,译为统一资源定位符。格式类似协议主机名具体地址可能还有参数这里有三个概念,统一资源标识符,统一资源定位符,统一资源名称。 URI URI是Universal Resource Identifier通用资源标志符,是一个用于标识某一互联网资源名称的字符串。 该种标识允许用户对任何(包括本...

    Youngdze 评论0 收藏0
  • python模块之base64

    摘要:模块提供了在二进制数据和可打印字符间编解码的功能,包括中定义的等编码。可应用于生成安全的或文件系统编码场景中。等同于对类字节对象或纯字符组成的字符串进行标准解码,返回解码后的字节序列。 base64模块提供了在二进制数据和可打印ASCII字符间编解码的功能,包括RFC3548中定义的Base16, Base32, Base64, Ascii85, Base85等编码。 RFC3548中...

    CoderDock 评论0 收藏0

发表评论

0条评论

junbaor

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<