就是这样。 Golang的极简主义,无聊的Pastebin克隆服务器。它仅支持两个操作:
您还需要什么?
binnit是一个无依赖项的可执行文件。您不需要Web服务器。您不需要SQL Server。您不需要任何外部库。
binnit以这种格式提供糊状物:
http://<server_name>/abcdef1234567890
并将它们存储在服务器上的文件夹中,每个粘贴一个文件,其文件名与粘贴ID相同。糊的独特ID是从标题,时间和内容串联的SHA256中获得的。渲染是最小的,目的是基于可自定义的模板。
当前通过简单的键=值配置文件配置binnit ,可以通过选项-c <config_file>在命令行上指定其名称。如果未指定配置文件, binnit查找./binnit.cfg 。可配置的选项是:
与其他类似Pastebin的服务一样,您可以使用curl将糊状物发送到binnit 。例如,如果您的binnit服务器正在http://servername.net上运行,则可以使用以下方式粘贴文件:
curl -F 'paste=<myfile' http://servername.net
并获取与新创建的糊剂关联的ID。相似地
mylongcommand | curl -F 'paste=<-' http://servername.net
将mylongcommand的输出粘贴到http://servername.net ,并在输出新粘贴的ID上显示。
野外有数百个类似粘贴的服务器。但是,绝大多数的软件过多,具体取决于许多库/框架/工具,提供了许多无用的功能,并意味着无用的复杂性。
粘贴服务器必须能够做两件事,1)创建一个新的糊状并返回其ID; 2)使用其ID检索现有的糊剂。 binnit以最简单的方式仅做这两件事,而没有任何外部依赖。如果您需要更多,那么binnit不适合您。但是您真的还需要更多吗?
似乎没有其他要添加的东西可以实现完美,但是当无需删除时(Antoine deSaintExupéry)
binnit目的是真正的最低限度。它总共包含大约500行Golang源代码,包括:
如果您想进一步剥离binnit ,则可以考虑删除:
您无法删除每个源文件上的许可证语句。
binnit是Vincenzo“ Katolaz” Nicosia的版权(2017)。
binnit是免费软件。您可以根据GNU AFFERO通用公共许可证的条款(许可证版本3或您选择的任何以后版本)使用,修改和重新分配它。有关详细信息,请参阅License.MD。