Slink:短链、图床、记事本、剪贴板四合一

🎉 Slink 是什么

Slink 是一个轻量级、高性能的多功能文件管理服务,基于 Cloudflare WorkersKV 存储,具备免费且快速的短链、图床、记事本、剪贴板四个模块。该项目旨在提供一个易于部署、功能完善的自托管文件管理解决方案。

image.png

image.png

✍️ Slink 的主要功能

通用功能

  • KV 数据管理: 提供管理面板,支持 查询、删除 链接
  • 自定义名: 所有模块均可自定义名称并支持中文名
  • 访问统计: 可选开启,对每个短链接记录访问次数
  • 阅后即焚: 可选开启,链接被访问后立即从 KV 中删除
  • 二维码生成: 在管理列表页,支持即时生成短链接的 二维码
  • 暗黑模式: 支持手动切换明亮模式或暗黑模式
  • 响应式设计: 采用响应式设计,适配手机平板等设备访问
  • 反向查询: 支持根据短链接 Key 或文件名查询原始数据

各模块功能

记事本模块剪贴板模块 尚未开发完成,敬请期待!

模块 功能 描述
短链模块 短链生成 唯一链接 支持将任意长网址生成简洁的短链接 对同一长链接,只生成一个短链接(默认开启)
图床模块 图片上传 直链预览 上传图片到图床,返回图片的访问链接 可生成预览图与访问直链
记事本模块 (待实现) 文本存储 Markdown 可存储任意文本内容 计划支持 Markdown 语法
剪贴板模块 (待实现) 文本复制 文本粘贴 将任意文本内容复制到剪贴板 从剪贴板中粘贴已复制的文本

🧩 快速部署

  • 到 CF 创建一个 worker,删除默认的示例代码
  • 到下面仓库找到 _worker.js 文件,复制全部内容粘贴到 worker 中,点击 保存并部署

引用站外地址Yutian81-Github点击直达并顺手点个星

  • 创建一个新的 KV 命名空间,名称随意,如 slink
  • Worker 设置 中找到 KV 命名空间绑定,变量名称填写 LINKS(不能是其他名称),绑定刚刚创建的 KV 空间,保存
  • 配置以下环境变量(均为可选,默认管理员密码为 admin
变量名 默认值 描述
ADMIN admin 管理密码,访问/admin 进入主页
PASSWORD apipass API 秘钥,小白不用管它
UNIQUE_LINK true 是否开启唯一链接功能(相同 URL 只生成一个短链)
CUSTOM_LINK true 是否允许用户自定义短链 Key
OVERWRITE_KV true 是否允许覆盖已存在的自定义短链 Key
SNAPCHAT_MODE false 是否启用阅后即焚模式(访问一次后删除)
VISIT_COUNT false 是否启用访问计数功能
LOAD_KV true 是否允许从 KV 加载数据,需要绑定变量名为LINKS 的 KV 空间
  • 访问 https://your-worker.your-account.workers.dev/<ADMIN> 进入管理页面
  • 建议:绑定一个自定义域名

💫 进阶部署

通过 github action 自动部署,与作者仓库同步,即可自动部署最新版本

  • fork 作者仓库
  • 依次点击自己仓库的 action自动同步上游仓库run workflow

image

  • 只有首次同步需要点击,后续会自动同步
  • 设置仓库机密 settingSecrets and variablesaction

image

  • 切换到 variables 选项卡,点击 New repository variable,创建如下变量:
    • CF_ACCOUNT_ID:CF 账户 ID
    • CF_API_TOKEN:CF 个人访问令牌,需要 worker 和 kv 权限
    • CF_KV_ID:你所创建的 KV 的 ID
    • ADMIN:管理密码,默认为 admin(可选)
    • PASSWORD:API 秘钥,默认为 apipass(可选)

image

  • 点击仓库上方的 action 选项卡,点击左侧 自动部署到CF Worker,点击 run workflow
  • 等待部署完成,在部署日志中找到项目在 CF 的管理页面,点击进入 CF,绑定一个自定义域名

🔌 API 接口说明

  • API 端点:/<ADMIN>,示例 /admin
  • 请求体:"Content-type": "application/json"
方法 参数 cmd 命令 描述
POST cmd, url, key, password, type add 创建短链接
POST cmd, key, password del 删除短链接
POST cmd, key, password qry 查询短链接
POST cmd, key, password qrycnt 查询访问计数
  • add 命令说明:
    • 当 key 为空时,生成随机短链接
    • 当 key 为单个字符串,使用该字符串作为短链接 Key
    • key 不支持数组格式,即不支持批量创建短链接
    • type 为链接模式,支持 linkimgnotepaste 四种类型
  • del、qry、qrycnt 命令说明:
    • 当 key 为空时,对所有短链接操作
    • 当 key 为单个字符串时,对该短链接操作,格式为 key
    • 当 key 为数组时,对数组中的每个短链接操作,格式为 ["key1", "key2", "key3"]

详见以下 API 文档:

引用站外地址Yutian81-Github点击直达并顺手点个星