说下短链接我知道的一种实现方式,假设我们有一个很长的地址:https://some-domain.com/api?very-looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong-arg-list复制和传播这种地址都不方便,于是,我们用另一个短的地址来代替:https://some-domain.com/short-list?arg=vHenahcdaehf后面的vHenahcdaehf是随机生成的,生成的时候只要保证能唯一映射到上面那个长的网址就行。然后这个短网址就被传播出去了。有人访问这个短网址的时候,short-list对应的后台服务器收到请求参数arg=vHenahcdaehf后,在自己的数据库中查到这个参数对应上面的那个长地址,于是返回一个302跳转,带上这个长地址,那么对方浏览器就会跳到这个长地址去了。如果这个短链接要实现时效性,那就是在过期后,不返回302,返回404就可以了。youtube采用的应该是类似的方法。
说下短链接我知道的一种实现方式,假设我们有一个很长的地址:
复制和传播这种地址都不方便,于是,我们用另一个短的地址来代替:
后面的vHenahcdaehf是随机生成的,生成的时候只要保证能唯一映射到上面那个长的网址就行。
然后这个短网址就被传播出去了。有人访问这个短网址的时候,short-list对应的后台服务器收到请求参数arg=vHenahcdaehf后,在自己的数据库中查到这个参数对应上面的那个长地址,于是返回一个302跳转,带上这个长地址,那么对方浏览器就会跳到这个长地址去了。如果这个短链接要实现时效性,那就是在过期后,不返回302,返回404就可以了。
youtube采用的应该是类似的方法。