编程有意思

链接访问统计

从这开始聊 [自荐]Easy Links,追踪和分析你的 web链接

做个简易版很容易的,已知跳转到某个网址的代码是:

window.location.href = '新地址'

做个网页,加上上面的 JS 就可以实现跳转了,这样跳转速度很快的,基本可以认为无感。当然,没有任何统计功能。

我不会写统计功能,太麻烦了,找个第三方统计代码放进去好了,你喜欢什么用什么,我不管。

然后是一个时序问题,进页面就开始跳转的话,可能统计代码还没干活,所以把统计代码放在前面,先执行它。还不放心的话加一点延时跳转就行了。这些操作都十分基础。


可是,这样只能跳转到固定链接,那我们每次有一个新连接就需要弄一个新的页面,这很烦,所以我们可以利用网址中的 get 参数来传入目标网址,类似这样:

https://shortlink.com/redirect.html?target=https://meta.appinn.net/t/topic/30149/

但这样不行,因为后面网址中的一些符号会捣乱,所以我们得先对后面的网址进行编码,你可以在控制台运行:

encodeURIComponent('https://meta.appinn.net/t/topic/30149/')

获得这样的结果:

https%3A%2F%2Fmeta.appinn.net%2Ft%2Ftopic%2F30149%2F

然后组合出来的网址我不写了,现在我们网页里要获取这个 target 的值,你去搜索获取 get 值的方法,很多会定义出一个函数,用正则什么的搜索,但是,有一些的正则写的又不够严谨。

其实,如果不考虑兼容低版本浏览器,那么有现成的方法可用,也是非常的简单:

window.location.href = (new URLSearchParams(window.location.search)).get('target')

得,弄半天就写了一句代码,整的跟没干活似的……


你看这么简单,你学会了吧, 是不是觉得那个帖子里推荐的东东也不过尔尔 ……自己动手试试吧,你就知道了。

  • 方便的添加链接(当然我们可以再写个界面
  • 方便的管理已有链接(当然我们可以再弄个记事本
  • 方便阅读的统计数据(我们用的第三方,这个……除非再写个油猴子

如果上面这些你也不太在乎,那么我们的网页放在哪里呢?弄一个国内可以方便访问的网站也比较麻烦吧,何况,好多时候网址是通过 QQ 和微信发送的,自己的小网站很可能在里面被标一个大大的不安全……

所以,所以我们这里只是很单纯的聊聊技术而已。