VOSpace 2.1 and view=data

Dave Morris dave.morris at metagrid.co.uk
Mon Jun 6 12:31:18 CEST 2016


Hi all,

Just to be clear about the requirements, from the session at 
Stellenbosch my understanding was :

     * User wants to be able to send a service request to a VOSpace and 
get back a plain URL that can be used download the content of a node.

     * The download URL provides a way of sharing access to the node 
content.
     * The download URL should work with a simple HTTP GET request.
     * The download URL path should end with a filename based on the node 
name.
     * The download URL should be suitable for listing in a published 
paper.
     * The download URL should be suitable for sending to someone in an 
email.
     * The download URL can be used multiple times by multiple clients.
     * The HTTP response contains the correct file name header based on 
the node name.
     * The HTTP response contains the correct mime-type header based on 
the node content.

Basically, the user wants a simple URL they can share with their friends 
or publish in a paper.

Is that about right ?

Cheers,
Dave

--------
Dave Morris
Software Developer
Wide Field Astronomy Unit
Institute for Astronomy
University of Edinburgh
--------

On 2016-06-03 20:21, Brian Major wrote:
> Hello,
> 
> If you were present at the GWS II session in Stellenbosch you will 
> remember
> that the issue of being able to construct a single, shareable VOSpace
> download URL was raised.
> Currently, the recommended way of doing this is by constructing a
> /synctrans request with the REQUEST=redirect parameter included:
> 
> curl "https://server.example.com/vospace/synctrans
>     ?TARGET=vos://example.com~vospace/mydata1
>     &DIRECTION=pullFromVoSpace
>     &PROTOCOL=ivo://ivoa.net/vospace/Core#httpsget
>     &REQUEST=redirect
>     &SECURITYMETHOD=ivo://ivoa.net/sso#tls-with-certificate”
> 
> This works just fine and offers a lot of flexibility but is cumbersome. 
>  It
> is not intuitive to construct, and the URL doesn't end with the 
> filename,
> thus causing some clients (such as wget) to name the downloaded file
> something strange like 'tls-with-certificate' because, by default, they
> ignore the content-disposition header.
> 
> The current 1.1 spec says view=data is deprecated.
> 
> curl "https://server.example.com/vospace/nodes/mydata1?view=data"
> 
> If I remember correctly, these are some of reasons for deprecation:
>     1)  The behaviour overlaps with what is offered by /synctrans
>     2)  Because the URL ends with ?view=data, it suffers from the wget
> problem I noted above.
>     3)  There is ambiguity about the security method.  Just because the
> initial request was over https, you cannot assume a certain security 
> method
> (such as client certificates).  The security method cannot be 
> determined by
> the URL scheme.
> 
> That said, it is a much more attractive URL because it is RESTful (node
> hierarchy is in the URL path) and makes logical assumptions for the
> remaining parameters.  (direction is download, protocol is HTTP or 
> HTTPS,
> yes follow redirects).
> 
> So, for the purpose of being able to provide users with a single, 
> shareable
> download URL, I'd like to open the discussion on view=data again.  Some
> questions:
> 
> - Should VOSpace users require a smart client that understands transfer
> negotiations, or should simple HTTP clients such as curl and wget work?
>  (For downloads only--uploads and server to server transfers are 
> certainly
> too complex.)
> - Should VOSpace support view=data on the /nodes resource?
> - Is there an alternate way of offering a shareable download URL?  (By
> shareable I mean a URL that you can give collaborators and will work 
> for as
> long as the node exists.)
> 
> Cheers,
> Brian


More information about the grid mailing list