无服务器 自建短链服务 Url-Shorten-Worker 支持阅后即焚snapchat mode 配合二维码生成工具 制作一次性二维码
需求
https://t.me/blacktechsharing/183161
思路
二维码实际上就是以一种图片的方式写的一串字符. 这串字符可以是一个网址.
既然这个二维码图片已经发给别人了, 你不可以跑到别人的电脑或者手机里面去删掉图片, 那么"一次性二维码"是怎么实现的呢?
二维码图片不变, 那么二维码对应的网址A不变.
你访问网址A就是访问一个服务器. 这个服务器可以让来访问网址A的人都跳转到一个新的网址B.
我们定义网址B才是真正有实际意义的网址. 让服务器只允许第一次访问网址A的人跳转到网址B, 以后再来访问网址A, 跳转都失效.
这样就实现了 "一次性二维码".
举例,
实际有意义的网址, 是 https://google.com
我们搭建一个服务器, https://1way.eu.org
我们让 https://1way.eu.org/HcAx62 跳转到 https://google.com 而且只跳转一次.
我们以 https://1way.eu.org/HcAx62 生成一个二维码.
有人扫了这个二维码, 那么他会访问 https://1way.eu.org/HcAx62, 系统让他跳转到 https://google.com, 然后系统记录这个 https://1way.eu.org/HcAx62 失效.
再有人扫了这个二维码, 那么他同样会访问 https://1way.eu.org/HcAx62, 但是系统告诉他这个资源失效了.
实践
worker.js
增加一个配置项 snapchat_mode, 默认关闭.
在跳转原链之前, 将这条记录删除. 那么下次再来查, 就找不到记录了.
配合二维码编码解码工具, 转换一次性二维码的全流程
========
评论
发表评论