Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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
String 像tinyurl这样的网站是如何生成URL的?_String_Url_Encoding - Fatal编程技术网

String 像tinyurl这样的网站是如何生成URL的?

String 像tinyurl这样的网站是如何生成URL的?,string,url,encoding,String,Url,Encoding,我看了tinyurl、tinypic、imgur和youtube!我认为他们会使用索引的文本安全表示形式,并将其用作数据库中的主ID。但是,尝试将键放入Convert.FromBase64String(“键”)不会产生任何结果,并引发异常。因此,这些站点不使用base64阵列。他们在用什么?如果我要做一个类似youtube的网站或tinyurl,我会想用什么呢?我猜他们只是简单地生成一个随机字符串并将其用作主键。我真的看不出有什么理由做其他事情。我不知道TinyURL、Tinypic等。但是sh

我看了tinyurl、tinypic、imgur和youtube!我认为他们会使用索引的文本安全表示形式,并将其用作数据库中的主ID。但是,尝试将键放入Convert.FromBase64String(“键”)不会产生任何结果,并引发异常。因此,这些站点不使用base64阵列。他们在用什么?如果我要做一个类似youtube的网站或tinyurl,我会想用什么呢?

我猜他们只是简单地生成一个随机字符串并将其用作主键。我真的看不出有什么理由做其他事情。

我不知道TinyURL、Tinypic等。但是shorl.com使用了一种叫做


如果我要开发这样一个系统,我想某种短散列或普通随机字符串可能是可能的选择。

我猜他们已经开发了自己的编码,这只是他们数据库中ID的字母数字等价物。我确信他们不会生成随机字符串,因为这会在某一点造成灾难性的溢出

您可能会感兴趣,但请不要再缩短URL。使用哈希算法也可能是可行的选择,因为它可以防止将同一内容存储两次。另一方面,现在存储非常便宜,所以我真的不知道这是否必要。我多次尝试在tinyurl生成器中输入相同的url,它输出相同的缩短url。