13个版本 (6个破坏性)

使用旧的Rust 2015

0.17.9 2018年6月3日
0.17.8 2018年1月25日
0.15.0 2018年1月19日
0.9.1 2018年1月18日
0.1.0 2017年12月16日

#17 in #iron-web

每月50次下载
用于 pastebind

MIT/Apache

38KB
582

crates.io docs.rs travis-ci

简单的粘贴板服务

关于

这是一个简单的多用途RESTful存储服务器库,用Rust编写,并使用Iron网络框架。

请注意!此库提供的是库(显然),而实际的服务器是分离到另一个库pastebind中。该库中也提供了使用说明。

REST API

要上传数据(无论是文本还是文件),只需将其通过POSTPUT请求发送到/即可。您可以额外指定一个文件名作为URI段,例如/file.txt。服务将回复一个包含粘贴ID的链接。该地址应用于稍后操作粘贴。

要指定过期日期,请将查询参数expires添加到您的POSTPUT)请求中,并使用所需的过期日期(UTC)的Unix时间戳值,例如以下为2019年1月1日(UTC):?expires=1546300800。如果您不指定日期,它将设置为服务器的默认值(默认过期时间作为命令行参数传递给服务应用程序)。为了使粘贴无时间限制地存储,您必须传递特殊值never,如下所示:?expires=never

要下载数据,请向 /id 发送一个 GET 请求,其中 id 是在上一步骤中获得的一个粘贴 ID。实际上,你不需要专门获取一个 ID,只需直接使用 POST (PUT) 返回的链接即可。如果粘贴包含关于文件名的信息,服务将重定向请求到 /id/file-name,这样你就可以以正确的名称保存文件。顺便说一句,如果你想在使用 wget 的同时利用此功能,请在命令中传递 --content-disposition 标志。

你还可以在 GET 请求中提供所需的文件名,例如 /id/file-name

要删除粘贴,请向 /id 发送一个 DELETE 请求,粘贴将被删除(如果存在的话)。

性能

待完成。

依赖项

~21MB
~409K SLoC