侧边栏壁纸
博主头像
飞梭的博客 博主等级

行动起来,活在当下

  • 累计撰写 31 篇文章
  • 累计创建 17 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

基于Cloudflare Worker部署的在线剪切板,支持markdown和文件分享

FlyShadow
2024-12-12 / 0 评论 / 0 点赞 / 38 阅读 / 0 字

想着每次用传输文本和小文件时,得复制到微信在传输,有时格式还对不上。用其余的也不放心和麻烦。闲来无事,用cursor搓了一个基于Cloudflare Worker部署的在线剪切板。

地址:GitHub - ling-drag0n/CloudPaste: 基于 Cloudflare Workers 的在线剪贴板和文件分享服务,支持 Markdown、密码保护、文件上传等功能

功能特点

文本分享

  • 支持普通文本和 Markdown 格式

  • Markdown 实时预览和同步滚动

  • 完整的 Markdown 样式支持

    • 优化的列表嵌套显示

    • 美化的表格样式

    • 代码块实时语法高亮

    • 支持数学公式渲染 (KaTeX)

  • 编辑器支持双向拉伸调整大小

  • 支持密码保护

  • 可选过期时间

  • 自定义分享链接后缀

  • 支持设置分享访问次数限制

  • 同步滚动预览

文件分享

  • 支持拖拽上传

  • 多文件上传

  • 文件大小限制(98MB,注意worker限制和R2限制)

  • 密码保护

  • 自定义过期时间

  • 实时上传进度显示

  • 文件预览功能

    • 图片预览

    • 音频预览

    • 视频预览

  • 上传速度显示

  • 支持取消上传

  • 文件类型图标显示

管理功能

  • 管理员登录

  • 管理员状态持久化

  • 查看所有分享链接

  • 分类过滤(文本/文件)

  • 可管理文本/文件上传(防止被盗刷额度)

  • 删除分享(带确认提示)

  • 复制分享链接

  • 查看分享统计

  • 自动过期清理 (每当有请求访问时,检查当前时间,如果是整点(分钟为0),触发清理操作)

  • 监控存储空间使用情况

    • 已用空间

    • 总容量

    • 使用率百分比

  • 修改分享密码(支持文本和文件分享)

    • 可随时添加/移除密码保护

    • 支持清空密码移除保护

  • 支持设置分享下载次数限制

访问控制

  • 密码保护

    • 支持文本和文件分享设置密码

    • 管理员可随时修改或移除密码

    • 密码加密存储

  • 文本内容控制

    • 仅管理员可编辑已分享的文本内容

    • 普通用户只能查看

  • 上传控制

    • 管理员可开启/关闭文本上传功能

    • 管理员可开启/关闭文件上传功能

    • 防止恶意上传占用资源

部署步骤

1. 准备工作

  1. 注册 Cloudflare 账号

  2. 进入 Cloudflare 控制台

2. 创建存储资源

  1. 创建 KV 命名空间

    • 名称:PASTE_STORE

    • 用于存储文本内容

    • 名称:UPLOAD_STATUS

    • 用于存储上传功能的开关状态

  2. 创建 R2 存储桶

    • 名称:cloudpaste-files

    • 用于存储上传的文件

3. 创建 Worker

  1. 创建新的 Worker

  2. 配置环境变量:

    ADMIN_USERNAME=你的管理员用户名
    ADMIN_PASSWORD=你的管理员密码
    
  3. 绑定存储:

    • KV 绑定:

      变量名:PASTE_STORE
      选择创建的 KV 命名空间
      
      变量名:UPLOAD_STATUS
      选择创建的 KV 命名空间
      
    • R2 绑定:

      变量名:FILE_STORE
      选择创建的 R2 存储桶
      

4. 部署代码

  1. 复制 worker.js 的完整代码

  2. 粘贴到 Worker 的编辑器中

  3. 保存并部署

0

评论区