当前位置:  开发笔记 > 编程语言 > 正文

Unicode URL解码

如何解决《UnicodeURL解码》经验,为你挑选了1个好方法。

对unicode字符进行URL编码的常用方法是将其拆分为2%HH代码.(\ u4161 => %41%61)

但是,解码时如何区分unicode?你怎么知道%41%61\ u4161\ x41\x61("Aa")?

8位字符是否需要编码,前面是%00

或者,unicode字符应该丢失/分裂?



1> FlySwat..:

根据维基百科:

现行标准

通用URI语法要求在URI中提供字符数据表示的新URI方案实际上必须表示来自未保留集的字符而不进行转换,并且应该根据UTF-8将所有其他字符转换为字节,然后百分比编码这些值.此要求于2005年1月随着RFC 3986的发布而引入.在此日期之前引入的URI方案不受影响.

当前规范未解决的是如何处理编码字符数据.例如,在计算机中,字符数据在某种程度上以编码形式显示,因此在映射到URI字符时可以被视为二进制数据或字符数据.据推测,URI方案规范要考虑到这种可能性并且需要一个或另一个,但实际上,实际上很少(如果有的话)实际做.

非标准实施

存在Unicode字符的非标准编码:%uxxxx,其中xxxx是表示为四个十六进制数字的Unicode值.任何RFC都未指定此行为,并且W3C已拒绝此行为.第三版ECMA-262仍然包含一个使用此语法的转义(字符串)函数,还包括一个encodeURI(uri)函数,它转换为UTF-8并对每个八位字节进行百分比编码.

所以,看起来完全取决于编写unncode方法的人......标准不是很有趣吗?

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有