[带教程]浅浅搓了一个短链生成器
2024-11-18 18:21:24
发布于:浙江
今天闲的没事花了一个多小时搓了一个短链生成器,链接是这个: https://xiaosu.icu/short
也顺便教一下大家如何搓一个短链生成器~
短链生成器原理很简单,最重要的是你得有一个比较短的域名 (不然就不叫短链了)
本质原理就是建立一个映射表,记录短链和目标url的地址,比如现在我们想要创建一个短链,短链的路径为https://xiaosu.icu/s/a
我们以flask为例,这样写来捕获和处理
@app.route('/s/<path>')
def short_link_redirect(path):
if path == "a":
return redirect(跳转的url, code=301)
但是很明显,人工一个一个写,一个一个匹配也太麻烦了,这时候 聪明的小朋友 就发现了,这个结构和python的字典很相似,于是我们可以创建一个字典
{
"短链路径1":
{
"url": "路径1需要跳转到的路径"
},
"短链路径2":
{
"url": "路径2需要跳转到的路径"
}
...
}
匹配的代码就可以写成
@app.route('/s/<path>')
def short_link_redirect(path):
url = 短链映射表字典.get(path)['url']
if url is not None:
return redirect(url, code=301)
基本的原理就是这么简单,之后再加上持久化存储、api接口、前端网页之类的就是一个比较完整的短链生成器了。
全部评论 7
顶
4天前 来自 广东
0顶!!!
4天前 来自 湖南
0顶
4天前 来自 湖南
0顶
4天前 来自 湖南
0顶
4天前 来自 湖南
0顶
4天前 来自 湖南
0顶
4天前 来自 浙江
0顶!!!
4天前 来自 湖南
0顶
3天前 来自 浙江
0
有帮助,赞一个