京东上也是支持大家推广的,不过往往推广的链接非常的长,这时候分享起来既麻烦也不好看,所以大家都想把分享链接变成短链接,但是自己手动改可能就变成不是自己的了,究竟怎么弄成短链接呢?
短链接或者说短网址其实就是将原来比较长的url(网址)通过一系列的算法转化为比较短的一个url地址。
常见的有两种算法:
一、MD5算法
将长网址 md5 生成 32 位签名串,分为 4 段, 每段 8 个字节;
对这四段循环处理, 取 8 个字节, 将他看成 16 进制串与 0x3fffffff(30位1) 与操作, 即超过 30 位的忽略处理;
这 30 位分成 6 段, 每 5 位的数字作为字母表的索引取得特定字符, 依次进行获得 6 位字符串;
总的 md5 串可以获得 4 个 6 位串,取里面的任意一个就可作为这个长 url 的短 url 地址。
这种算法,虽然会生成4个,但是仍然存在重复几率。
二、自增序列算法
把数字和字符组合做一定的映射,就可以产生唯一的字符串,如第62个组合就是aaaaa9,第63个组合就是aaaaba,再利用洗牌算法,把原字符串打乱后保存,那么对应位置的组合字符串就会是无序的组合。
把长网址存入数据库,取返回的id,找出对应的字符串,例如返回ID为1,那么对应上面的字符串组合就是bbb,同理 ID为2时,字符串组合为bba,依次类推,直至到达62种组合后才会出现重复的可能,所以如果用上面的62个字符,任意取6个字符组合成字符串的话,你的数据存量达到500多亿后才会出现重复的可能。
当然也有很多的在线工具可以生成短连接。可以自己搜索一下就知道了。
如果是说京东或者淘宝这类的短链接推广如何得到的,实际上是广告联盟的推广。比如京粉等。你注册后,搜到相关的商品,就会生成相应的推广链接(短链接)
其实京东也知道长链接不适合推广,所以它也有自己的长链接变短链接的方法,并且把方法也放了出来,大家可以用京东推广平台京粉来生成短链接,这样分享起来就不怕自己的链接变成别人的了。