VOSpace home page
VOSpace public share protocol
This wiki page serves as the definition for a VOSpace transfer protocol for sharing node content.
The target use case is to enable users to get a simple URL that provides access to the node content using a simple HTTP GET request.
If a client includes the URI for this protocol in a PullFromVOSpace transfer request, then the endpoint URL in the VOSpace server response will contain a simple URL that provides HTTP GET access to the node content.
Basic requirements
- The endpoint URL MUST work with a simple HTTP GET request.
- The endpoint URL SHOULD be suitable for listing in a published paper.
- The endpoint URL SHOULD be suitable for sending to someone in an email.
- The endpoint URL MUST be able to be used multiple times by multiple clients.
Technical details
- The URL of this wiki page serves as the URI for this transfer protocol.
- This protocol SHOULD only valid for a PullFromVOSpace transfer request.
- The UWS transfer job will complete immediately.
- The endpoint URL MUST continue to be valid after the transfer job has completed.
- The endpoint URL path MUST end with a valid file name based on the node name.
- The header fields of a HTTP response to a HTTP GET requests MUST contain a valid file name based on the node name.
- The header fields of a HTTP response to a HTTP GET requests MUST an appropriate mime-type based on the node content.
Technical issues
Things that need to be discussed..
- What if the transfer request contains more than one protocol - do the others remain valid even if this one has completed ?
- What happens if the node content changes ?
- Do we want to define a ZippedArchive view that can be used in combination with this protocol to download the contents of a ContainerNode as a zipfile ?
Things that probably go in a separate
ProtectedShare protocol ..
- Do we want to add a property to control the URL lifetime ?
- Do we want to add a property to control the number of downloads allowed ?
- Do we want to add a property to control access ?