原文来自:https://xmpp.org/extensions/xep-0363.html,只翻译了技术方面的内容。
摘要:这个规范定义了一种协议,用于从另一个实体请求权限上传文件到HTTP服务器指定的目录,同时接收到一个URL,以后就可以从该URL再次下载该文件。
状态:草案。
注意:这里定义的协议是XMPP标准基金会的一个标准草案。我们鼓励实现这个协议,协议适合在生产系统中部署,但是在协议变成最终标准前可以对其进行一些修改。
类型:Standards Track(可参考RFC 2026)
版本:1.0.0(2020-02-11)
1.介绍
XMPP扩展协议定义了点对点文件传输的方法,例如 SI File Transfer (XEP-0096)或Jingle File Transfer (XEP-0234),但是由于它们是点对点的,所以在需要将文件一次性发送给多个收件人或同一收件人多个时,它们的性能不是很好。它们同样不能和离线存储,MUC历史记录和消息存档管理(XEP-0313) 一起工作。
手动上传文件到HTTP服务器并共享链接,这是一个长期以来的解决方案。虽然用户根据这种手动方法缺点中选择各种服务,但是XMPP客户端不能自动代表用户自动执行此过程,因为跟这些服务不是共享一个公共API。此外,使用第三方服务可能需要用户向XMPP客户端输入额外的凭证,热别是文件上传。
这个XEP定义了一个方法用于用其它实体请求权限上传文件到HTTP服务器的指定路径,并且同时接受一个能够下载文件的URL。这些由PUT和GET-URL组成的元组称为槽(slot)。
2.要求
(1)容易实现。这是基于这样的一个想法,就是大多数编程语言已经有了可用的HTTP库。
(2)