短链接
介绍:
短链接即是将有原来较长的链接通过一定算法,转换为较短的链接。常见用于如短信内链接、视频分享链接等。
它的好处显而易见:
- 拥有更短的长度:如短信发送字数是固定的。如果长度固定为70个字,那么超出部分将会算作第二条、第三条短信。增加了费用支出。
- 如果链接中带有参数,那么可能存在人为修改链接的可能性。使用经过算法转换过的短连接可以有效地规避这个问题。
- 更短的链接带来的是更好的视觉体验,否则链接过长可能页面整个都被链接占用了。
短连接的原理:
将一个地址经过转换后得到https://d和wz.cn/r0K谐BnBCv 访问这个链接
- 将长链接通过一定的手段生成一个短链接
- 访问短链接时实际访问的是短链接服务器,然后根据短链接的参数找回对应的长链接
- 重定向跳转
如何才能生成一个短链接?
首先解决的是需要选定什么样的算法来转换原链接。
目前较为常用的一种为:自增序列算法。它的好处是不存在链接重复的情况。
其原理为:
- 生成一个自增的id
- 将id进行62位编码
转换为62进制的原因为:
- 62进制转换是因为62进制转换后只含数字+小写+大写字母。而64进制转换会含有/,+这样的符号(不符合正常URL的字符)
- 10进制转62进制可以缩短字符,如果我们要6位字符的话,已经有560亿个组合了。
其流程图借用网上的图片,可以表现为:
这样短链接与原连接的映射关系就保存下来了。
在访问链接时,就可以统计点击量、访问的 ip 地域、用户使用的设备。
结语:
短链接的原理还是很简单的,有时间钻研一下,自己尝试搭一个短链接的服务器。
短链接的重点就在于算法的实现,上面展示的只是诸多算法中的一种,还有其他的算法可以使用。各种算法都有各自的优劣势。