爱意满满的作品展示区。
patrickyoung

[新手练手] pb-go: 又一个使用 Golang 编写的 PasteBin

  •  
  •   patrickyoung · Feb 8, 2020 · 2922 views
    This topic created in 2313 days ago, the information mentioned may be changed or developed.

    新手的第一次练手项目,轻喷,也麻烦大家提出一些意见和建议。

    项目目前还处于早期阶段,可能存在一些 Bug,烦请大家指正。公共实例不要存在过多滥用的情况下,我们会保证坚持免费服务。

    前言

    Golang 编写的程序具有原生交叉编译和单二进制文件的特性,同时相比解释性语言来说,运行也更加高效。

    之前使用过和部署过的两个 Pastebin 项目,Termbinptpb/pb ,他们都功能够用,但是几乎都忽视了反滥用的需要和服务器存储的有限性。

    本项目

    photo_2020-02-07_23-53-45.jpg

    GitHub: https://github.com/pb-go/pb-go

    Demo (请勿滥用,已开启 Recaptcha ): https://pbgo.top

    产品特性:

    • 自动强制过期,避免被滥用者用于长期存储或者老旧内容得不到清理
    • 上传限制,只允许上传小于 2M 的纯文本
    • 验证码,管理员选择性启用对所有上传请求的强制验证
    • 客户端,我们为了便利你的操作,制作了客户端。当然,你也可以继续使用 curl 和 shell alias
    • 本地数据加密存储,使用 Chacha20-Poly1305,密码哈希使用 Blake2B (由于反滥用需要,未来也不会支持客户端加密)
    • 默认支持自动代码高亮,使用 Prettify.js 实现的,添加 f=raw 作为 URL 参数可以获取原始内容
    • 默认短链接
    • 网页上传支持
    • 简单、减少额外开销,非法请求只返回 HTTP 状态码,不做任何提示
    • 阅后即焚、支持访问密码和自定义过期时间(不可超过服务器限制的最大值)
    • 管理员可以便捷删除任意上传内容。整个产品只对管理员做了身份认证
    • 单一的二进制文件和 YAML 配置,易于编写和携带,文档完善。外部依赖只需要 MongoDB

    更多详情和交流,欢迎前往 GitHub 提交 Issue 或者加入我们的 Telegram 交流群。如果你觉得这个项目对你有帮助,可以考虑给我一个 Star,谢谢大家的支持。

    1 replies    2020-02-08 16:11:24 +08:00
    STRRL
        1
    STRRL  
       Feb 8, 2020
    打破 0 回复惨案
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5508 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 09:01 · PVG 17:01 · LAX 02:01 · JFK 05:01
    ♥ Do have faith in what you're doing.