Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Browser 什么是最小的URL友好编码?_Browser_Encoding - Fatal编程技术网

Browser 什么是最小的URL友好编码?

Browser 什么是最小的URL友好编码?,browser,encoding,Browser,Encoding,我正在寻找一种在空间方面最有效的url编码方法。原始二进制文件(base2)可以用base16表示,base16更小并且是url安全的,但是base64更有效。然而,通常的base64编码不是url安全的 那么,对于URL来说,哪种最小的编码方法也是安全的呢?您可以使用62个字符的表示形式,而不是通常的基数64。这将为您提供类似youtube的URL: 如果需要将字符串映射到数据库数字ID,可以使用本页提供的PHP函数: 或者,如果您需要直接将数字ID转换为短URL字符串,请使用此选项: 这

我正在寻找一种在空间方面最有效的url编码方法。原始二进制文件(base2)可以用base16表示,base16更小并且是url安全的,但是base64更有效。然而,通常的base64编码不是url安全的


那么,对于URL来说,哪种最小的编码方法也是安全的呢?

您可以使用62个字符的表示形式,而不是通常的基数64。这将为您提供类似youtube的URL:

如果需要将字符串映射到数据库数字ID,可以使用本页提供的PHP函数:

或者,如果您需要直接将数字ID转换为短URL字符串,请使用此选项:

这就是为什么

它使用相同的标准Base64字母表,不同的是
+
更改为
-
/
更改为
.

大多数现代Base64实现都支持这种交替编码。如果您没有,通常只是在解码之前对Base64输入进行搜索/替换,或者在将其发送到浏览器之前对输出进行搜索/替换