Hello,
We had a try at changing a bit our approach for HTTP-based file transfer
to support use cases, pointed out by Sam and Daniel.
The result is here:
https://github.com/processone/ejabberd-saas-docs/blob/master/xmpp-specs/http-filetransfer/http-filetransfer.md
What we changed is:
- Ability to have permanent download URLs that do not require the client
to know about the protocol. When URL is permanent (or before the
download URL expires) client is not forced to request a download URL
from the file id.
- Added ability for the server to pass headers along with upload URL.
The client may need to use those HTTP headers to be allowed to upload
the file.
Please, let me know if this is helpful.
We have something that we have left pending, waiting for your feedback:
the hash for now is a binary md5 as this is the one supported by Amazon
S3. However, other services may use other type of hash or no hash at
all. What bothered me is that User avatar use SHA-1 as id. Some service
may use the same hash for consistency. Some service may not require any
hash at all or just use file size as a basic check.
We may need a data form to accommodate that flexibility.
Do you think it is worth it ?
--
Mickaël Rémond
http://www.process-one.net