一个使用 Cloudflare Pages 创建的 URL 缩短器
Demo : https://short-3ud.pages.dev/
未完成,Tencent EdgeOne的KV 存储还在申请中
一键部署:
- fork本项目
- 登录到Cloudflare控制台.
- 在帐户主页中,选择pages>Create a project>Connect to Git
- 选择你创建的项目存储库,在Set up builds and deployments部分中,全部默认即可。
- 点击Save and Deploy,稍等片刻,你的网站就部署好了。
- 创建D1数据库参考这里
- 执行sql命令创建表(在控制台输入框粘贴下面语句执行即可)
DROP TABLE IF EXISTS links;
CREATE TABLE IF NOT EXISTS links (
  `id` integer PRIMARY KEY NOT NULL,
  `url` text,
  `slug` text,
  `ua` text,
  `ip` text,
  `status` int,
  `create_time` DATE
);
DROP TABLE IF EXISTS logs;
CREATE TABLE IF NOT EXISTS logs (
  `id` integer PRIMARY KEY NOT NULL,
  `url` text ,
  `slug` text,
  `referer` text,
  `ua` text ,
  `ip` text ,
  `create_time` DATE
);
- 
选择部署完成short项目,前往后台依次点击 设置->函数->D1 数据库绑定->编辑绑定->变量名称填写:DB命名空间选择你提前创建好的D1数据库绑定
- 
重新部署项目,完成。 
# POST /create
curl -X POST -H "Content-Type: application/json" -d '{"url":"https://131213.xyz"}' https://d.131213.xyz/create
# 指定slug
curl -X POST -H "Content-Type: application/json" -d '{"url":"https://131213.xyz","slug":"scxs"}' https://d.131213.xyz/create
response:
{
  "slug": "<slug>",
  "link": "http://d.131213.xyz/<slug>"
}