Documentation

Documentation Accès directement aux données

Accès directement aux données

Le service de données vous permet de télécharger des fichiers directement des archives du CCDA. Si vous connaissez le nom d'un fichier et le nom de l'archive, vous pouvez utiliser une simple adresse URL pour télécharger un fichier. Cette adresse URL peut servir avec des clients de la ligne de commande, comme wget ou curl, et peut être intégrée dans des scripts.

Utilisation de base

Le présent document porte sur le téléchargement des données par le transfert direct seulement, méthode qui devrait convenir à la majorité des utilisateurs. Ci-dessous figure un exemple d'une adresse URL d'un service de données:

http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/1722795p.fits[24][520:990,2420:2782]

L'adresse URL comporte quatre parties:
  • http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/: désigne l'adresse URL du service. La terminaison data/pub vous permet d'accéder à tous les fichiers publics. Si le fichier est exclusif, vous êtes redirigé vers data/auth où vous devez saisir votre nom d'utilisateur et votre mot de passe du CCDA dans la fenêtre surgissante habituelle d'un navigateur ou sur la ligne de commande au moyen des commandes wget et curl. Il existe d'autres options décrites ci-dessous à la section Utilisation avancée..
  • CFHT: désigne le nom de l'archive. archives.txt.
  • 1722795p.fits: désigne le nom du fichier.
  • [24][520:990,2420:2782] après le nom du fichier, vous pouvez ajouter des options, dans le présent cas, un découpage. Cette adresse URL télécharge seulement une sous-section de l'image.
Cette adresse URL (et les autres énoncés ci-dessous) peut servir sur la ligne de commande des clients web (p. ex., wget, curl) ou avec des scripts (p. ex., la bibliothèque des requêtes dans Python).

Autres exemples d'adresses URL

Utilisation de wget et de curl

Exemple simple avec wget:
wget 'http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/HLADR2/hst_05476_4r_wfpc2_total_pc_drz.fits.gz'
Exemple simple avec curl:
curl -O -L 'http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/HLADR2/hst_05476_4r_wfpc2_total_pc_drz.fits.gz'
Les options -O -L provoquent l'enregistrement local du fichier sous le même nom que la version distante (au lieu de l'enregistrer vers STDOUT) et entraînent le suivi de tout réacheminement.

Si les données que vous téléchargez ne sont pas publiques, vous devez utiliser votre nom d'utilisateur et votre mot de passe du CCDA. Par exemple:
wget --user=fred --password=Pas$w0rD 'http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/HLADR2/hst_05476_4r_wfpc2_total_pc_drz.fits.gz'
Ou:
curl -u fred:Pas$w0rD -O -L 'http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/HLADR2/hst_05476_4r_wfpc2_total_pc_drz.fits.gz'

Les deux commandes acceptent plusieurs autres options.

Options courantes avec wget

  • --user=username --password=password Précise le nom d'utilisateur et le mot de passe.
  • -nv Exécute la commande en mode texte non affiché. La commande wget envoie beaucoup de données à STDOUT. Si vous ajoutez wget à un script, utilisez cette option de préférence.
  • -qExécute la commande en arrière-plan.
  • -t, --tries=NUMBER Fixe le nombre de tentatives jusqu'à la valeur précisée par NUMBER (nous recommandons 5 tentatives).
  • --waitretry=SECONDS Nombre de secondes d'attente entre deux récupérations. Par défaut, wget utilise une valeur de 10 secondes.
  • -N, --timestamping Active l'horodatage et télécharge seulement les fichiers manquants ou mis à jour.
  • --content-disposition Force wget à attribuer le nom approprié au fichier téléchargé.
  • --certificate=file Utilise le certificat d'authentification dans le fichier.

Options courantes avec curl

  • -O Enregistre localement le fichier sous le même nom que la version distante.
  • -L Suit les réacheminements.
  • -u username:password Précise un nom d'utilisateur et un mot de passe. Si vous précisez seulement le nom d'utilisateur, curl vous invite à saisir le mot de passe.
  • -s Exécute curl en arrière-plan. Si vous ajoutez curl à un script, utilisez cette option de préférence.
  • --retry NUMBER Fixe le nombre de tentatives jusqu'à la valeur précisée par NUMBER (nous recommandons 5 tentatives).

Utilisation avancée

La présente section porte sur les fonctions du service de données, y compris la vérification de la disponibilité du fichier et le téléversement de fichiers pour les utilisateurs privilégiés. La structure d'une adresse URL de données est la suivante:

<http|https>://<data service resource>/<archive>/<fileID><options>

Élément Description
ressource du service de données L'adresse URL de base qui désigne la ressource du service de données. (Reportez-vous ci-dessous au tableau.)
archive Désigne l'archive des données (les archives du CCDA figurent dans le document archives.txt)
ID du fichier Désigne le fichier.

Ressources du service de données

Ressource Description
http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub Ressource de transfert du fichier de données publiques. Le dossier /pub sous HTTP ne recueille pas les justificatifs d'identité de l'utilisateur. Donc, si vous téléchargez un fichier non public ou téléversez vers un dossier non public, vous serez redirigé vers http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/auth et vous serez invité à saisir votre nom d'utilisateur et votre mot de passe.
http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/auth Ressource de transfert du fichier de données authentifiées. Cette ressource vous invite à saisir votre nom d'utilisateur et votre mot de passe du CCDA à des fins d'authentification et d'autorisation.
https://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub Ressource de transfert du fichier de données SSL. L'utilisation d'un certificat client est nécessaire pour vous connecter à cette ressource SSL. Votre autorisation dépend des justificatifs d'identité inscrits sur le certificat.
http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/transfer Point d'extrémité de la négociation du transfert lors des téléchargements et des téléversements.
https://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/transfer Point d'extrémité de la négociation du transfert qui soumet le certificat client en vue de l'authentification et de l'autorisation.
http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/auth/transfer Point d'extrémité de la négociation du transfert qui soumet le nom d'utilisateur et le mot de passe en vue de l'authentification et de l'autorisation.
http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/availability Ressource qui peut servir à vérifier la disponibilité du service de données. L'exécution d'une commande "HTTP get" sur cette ressource produit un document XML qui décrit l'état du service.

Techniques de transfert des données

  • Téléchargement direct: Exécutez une commande "HTTP PUT to /data/pub//" et téléversez directement dans le flux.
  • Téléversement direct: Exécutez une commande "HTTP PUT to /data/pub//" et téléversez directement dans le flux.
  • Téléchargement négocié: Exécutez une commande "HTTP POST document de transfert to /data/transfer" (ou /data/auth/transfer) et obtenez un document de transfert contenant plusieurs emplacements de téléchargement.
  • Téléversement négocié: Exécutez une commande "HTTP POST document de transfert to /data/transfer" (ou /data/auth/transfer) et obtenez un document de transfert contenant plusieurs emplacements de téléversement.

Authentification et autorisation

Si vous tentez d'accéder à un fichier non public, vous devrez vous authentifier au moyen de votre nom d'utilisateur et de votre mot de passe du CCDA ou d'un certificat client par l'entremise de SSL. Si l'authentification (connexion) échoue, vous obtenez un message HTTP 401 (Non autorisé). Si l'authentification réussit mais si vous n'avez toujours pas accès au fichier, vous obtenez un message HTTP 403 (Interdit). Si le fichier n'existe pas, vous obtenez un message HTTP 404 (Introuvable).

Téléchargement d'un fichier

Pour télécharger un fichier du service de données, exécutez une commande "HTTP GET" sur l'adresse URL du fichier cible. Par exemple, pour télécharger un fichier désigné I001B3H0.fits de l'archive IRIS, vous devez exécuter une commande "HTTP get" sur l'adresse URL:

http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/IRIS/I001B3H0.fits

Si la commande réussit, vous obtenez le code de réponse HTTP 200 et le fichier est téléchargé vers votre client.

Vérification de la disponibilité du fichier et de son accès

Pour simplement vérifier la présence d'un fichier et la possibilité d'y accéder, vous pouvez exécuter une commande "HTTP HEAD" sur la même adresse URL que vous utiliseriez pour télécharger le fichier. Cette commande vous permet de confirmer la présence du fichier et votre autorisation ainsi que de recueillir des métadonnées de base sur le fichier.

Pour afficher les en-têtes HTTP au moyen de curl, utilisez la commande curl --location --head ou curl -L -I

Avec wget, utiliser wget --server-response --spider

Les en-têtes portant un préfixe en X sont des en-têtes personnalisés du CCDA; tous les autres entêtes sont des en-têtes HTTP 1.1 standard.

En-tête HTTP Explication
Content-Type Type MIME du fichier (optionnel; seulement si le type est connu)
Content-Encoding Type de codage (en général, une compression) utilisé (optionnel)
Content-Disposition Nom de fichier suggéré pour les clients qui enregistrent le fichier
Content-Length Taille du fichier téléchargé
Content-MD5 Condensé MD5 du contenu du fichier
Last-Modified Date de la dernière modification du fichier (optionnel; absent lors d'une modification durant la livraison)
X-Uncompressed-Length Taille du fichier non compressé en octets (optionnel; absent lors d'une modification durant la livraison)
X-Uncompressed-MD5 Condensé MD5 du contenu du fichier non compressé (optionnel; absent lors d'une modification durant la livraison)
X-CADC-Stream Nom du flux utilisé lors de l'exécution d'une commande PUT (optionnel; le flux par défaut est utilisé en l'absence de précision)

Options de la commande HTTP GET

Options de plage

Autres paramètres utilisés avec l'en-tête lors du téléchargement d'un fichier:

Nombre En-tête Valeur Explication
zéro ou un Range: octets=<x>-<y> (octets x-y)
octets=<x>- (tous les octets à partir de)
octets=-<x> (x derniers octets)
Vous pouvez télécharger une section particulière d'un fichier à l'utilisation de l'en-tête d'une plage.

Veuillez noter que la requête de la plage n'est pas compatible avec les requêtes de découpage et sera supprimée.

Exemples

Les prochains exemples portent sur le programme curl. Vous devez utiliser l'option -g pour désactiver la commande d'expansion (globbing) pour que la commande curl ne tienne pas compte des caractères [ et ] dans l'adresse URL.

  1. Téléchargement du fichier complet du TCFH

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

    Exemple: curl --location-trusted -g -o 806045o.fits http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

  2. Téléchargement de la plage d'octets de 200 à 500 du TCFH

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

    Exemple: curl --location-trusted -g -o 806045o.fits -H "Range: octets=200-500" ttp://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

  3. Téléchargement du reste du fichier du TCFH à partir de l'octet 500

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

    Exemple: curl --location-trusted -g -o 806045o.fits -H "Range: octets=500-" http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

  4. Téléchargement des 2000 derniers octets du TCFH

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

    Exemple: curl --location-trusted -g -o 806045o.fits -H "Range: octets=-2000" http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

  5. Affichage des métadonnées (en-têtes) d'une image du TCFH

    HTTP HEAD à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

    Exemple: curl -v --location-trusted -g --head http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o

Découpages

Autres paramètres de l'adresse URL utilisés lors du téléchargement d'un fichier afin de faire un découpage:

Nombre Paramètre Valeur Explication
Un ou plus cutout [numéro de l'extension][section de l'image] Lorsque vous recherchez un fichier de type FITS, vous pouvez inclure divers paramètres liés aux découpages afin de récupérer seulement ces découpages. Nous utilisons un sous-ensemble de la spécification de la section d'image CFITSIO pour préciser le découpage. Veuillez noter que vous pouvez aussi utiliser les paramètres d'un seul découpage en guise de suffixe dans l'élément de l'identifiant du fichier de l'adresse URL.

Exemples de syntaxes de découpage

Section de l'image Explication
[1:512:2,2:512:2] Ouvre une image de 256x256 pixels composée d'un nombre impair de colonnes (1er axe) et d'un nombre pair de lignes (2e axe) de l'image stockée dans le tableau principal du fichier.
[*,512:256] Ouvre une image composée de toutes les colonnes de l'image source, mais seulement des lignes 256 à 512. L'image subit une rotation le long du 2e axe, étant donné que le pixel de départ est supérieur au pixel de fin.
[*:2,512:256:2] Idem, mais conserve seulement une ligne et une colonne sur deux de l'image source.
[-*,*] Copie toute l'image, et lui fait subir une rotation sur le premier axe.
[3][1:256,1:256] Ouvre une sous-section de l'image qui se trouve dans la 3e extension du fichier.

Récupération de l'en-tête FITS

Autre paramètre lié à l'adresse URL utilisé pour télécharger des renseignements sur l'en-tête FITS:

Nombre Paramètre Valeur Explication
one or more fhead true Lors du téléchargement d'un fichier de type FITS, l'ajout du paramètre fhead=true donne lieu au téléchargement des seuls renseignements sur l'en-tête du fichier.

Exemples généraux

  1. Découpage d'une seule extension

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1]

    Example: curl --location-trusted -g -o 806045o-cutout1.fits "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1]"

  2. Découpage sur les coordonnées d'un pixel

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHTSG/D3.IQ.R.fits[9979:10490,10573:11084]

    Exemple: curl --location-trusted -g -o D3.IQ.R.9979_10490_10573_11084.fits "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHTSG/D3.IQ.R.fits[9979:10490,10573:11084]"

  3. Extension et découpage sur les coordonnées d'un pixel

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1][1:100,1:200]

    Exemple: curl --location-trusted -g -o 806045o-cutout2.fits "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1][1:100,1:200]"

  4. Découpage sur plusieurs extensions

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1]&cutout=[2]

    Exemple: curl --location-trusted -g -o 806045o-cutout3.fits "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1]&cutout=[2]"

  5. Découpage sur plusieurs extensions sur les coordonnées d'un pixel

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1][10:120,20:30]&cutout=[2][10:120,20:30]

    Exemple: curl --location-trusted -g -o 806045o-cutout4.fits "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1][10:120,20:30]&cutout=[2][10:120,20:30]"

  6. Découpage sur une extension (version courte)

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o[1]

    Exemple: curl --location-trusted -g -o 806045o-cutout5.fits "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o[1]"

  7. Extension et découpage sur les coordonnées d'un pixel (version courte)

    HTTP GET à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o[1][1:100,1:200]

    Exemple: curl --location-trusted -g -o 806045o-cutout6.fits "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o[1][1:100,1:200]"

  8. Affichage des métadonnées (en-têtes) du découpage d'une extension d'une image du TCFH

    HTTP HEAD à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1]

    Exemple: curl -v --location-trusted -g --head "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o?cutout=[1]"

  9. Affichage des métadonnées (en-têtes) du découpage d'une extension d'une image du TCFH (version courte)

    HTTP HEAD à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o[1]

    Exemple: curl -v -L -g --head "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/806045o[1]"

Service de données et noms de fichier

Vous pouvez utiliser la disposition du contenu obtenue dans l'en-tête getData HTTP pour facilement enregistrer le fichier téléchargé sous le nom de fichier enregistré dans l'archive au moyen de wget et de son option --content-disposition. Veuillez noter que vous pourriez aussi vouloir utiliser l'option no-clobber pour éviter d'écraser les fichiers déjà téléchargés. Le programme curl n'offre aucune option équivalente à l'option --content-disposition de wget, mais vous pourriez récupérer l'en-tête HTTP du fichier, en faire l'analyse syntaxique pour obtenir la disposition du contenu et le nom du fichier, puis récupérer le fichier et l'enregistrer sous ce nom.

Dans le cas d'une adresse URL qui précise un découpage, le nom de fichier suggéré dans l'entête Content-Disposition comporte une partie supplémentaire; les différents découpages tirés du même fichier auront ainsi des noms de fichier distincts. Cette partie supplémentaire est en quelque sorte lisible, bien que bon nombre de caractères soient remplacés par un soulignement (_) pour en assurer la compatibilité avec l'internet et les systèmes de fichiers. Cette partie supplémentaire est uniforme d'une commande à une autre portant les mêmes paramètres de découpage.

Téléversement d'un fichier

Pour télécharger un fichier vers le service de données, vous devez détenir les droits d'accès d'écriture dans l'archive cible. Pour procéder à un téléversement, exécutez une commande HTTP PUT sur l'adresse URL du fichier et du flux source connexe de données. Si la commande réussit, le système transmet un code de réponse HTTP 201.

Upload example:

  • Téléversement d'un fichier

    HTTP PUT à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/newFile

    curl -T /path/to/newFile "http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/pub/CFHT/newFile"

Négociation du transfert d'un téléchargement

Les données du CCDA sont enregistrées dans plusieurs endroits. Les adresses URL précitées provoquent une redirection vers l'un des emplacements, décidée par le serveur du CCDA. Vous pouvez aussi obtenir une liste de tous les emplacements du fichier, ce qui vous permet de faire une tentative sur un autre emplacement si l'un de ces derniers est hors ligne.

Exemple de la négociation du transfert d'un téléchargement:

  • Téléchargement d'un fichier

    HTTP POST à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/transfer

    curl -d @mydoc -E mycert.pem -H "Content-Type: text/xml" "https://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/transfer"

    where mydoc is:

            <?xml version="1.0" encoding="UTF-8"?>
            <vos:transfer xmlns:vos="http://www.ivoa.net/xml/VOSpace/v2.0">
              <vos:target>ad:CFHT/oldFile</vos:target>
              <vos:direction>pullFromVoSpace</vos:direction>
              <vos:protocol uri="ivo://ivoa.net/vospace/core#httpget" />
            </vos:transfer>
            

    Donne lieu à un document de transfert visant les adresses URL du téléchargement:

            <?xml version="1.0" encoding="UTF-8"?>
            <vos:transfer xmlns:vos="http://www.ivoa.net/xml/VOSpace/v2.0">
              <vos:target>ad:CFHT/oldFile</vos:target>
              <vos:direction>pullFromVoSpace</vos:direction>
              <vos:protocol uri="ivo://ivoa.net/vospace/core#httpget">
                <vos:endpoint>http://uvic.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/transfer/CZhdXRoQ29kZT0wJnVybD1odHRwB1Ymxa8d2708b2c/oldFile</vos:endpoint>
              </vos:protocol>
              <vos:protocol uri="ivo://ivoa.net/vospace/core#httpget">
                <vos:endpoint>http://usask.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/transfer/ZXRoPWdldCZhdXRoQ29kZT0wJnVybD1odHRwJTNBJ/oldFile</vos:endpoint>
              </vos:protocol>
              <vos:protocol uri="ivo://ivoa.net/vospace/core#httpget">
                <vos:endpoint>http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/transfer/WdleHA9MjAxNTA2MjQyMzAwNTEmYXJjPVRFU1QmaW/oldFile</vos:endpoint>
              </vos:protocol>
            </vos:transfer>
            

Négociation du transfert d'un téléversement

Pour négocier un téléversement, exécutez la commande POST sur un document de transfert sur /data/transfer ou sur /data/auth/transfer et obtenez un document contenant les adresses URL de téléchargement en ordre préféré d'utilisation.

Exemple d'une négociation du transfert d'un téléversement:

  • Téléversement d'un fichier

    HTTP POST à: http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/transfer

    curl -d @mydoc -E mycert.pem -H "Content-Type: text/xml" "https://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/data/transfer"

    where mydoc is:

            <?xml version="1.0" encoding="UTF-8"?>
            <vos:transfer xmlns:vos="http://www.ivoa.net/xml/VOSpace/v2.0">
              <vos:target>ad:CFHT/newFile</vos:target>
              <vos:direction>pushToVoSpace</vos:direction>
              <vos:protocol uri="ivo://ivoa.net/vospace/core#httpput" />
            </vos:transfer>
            

    Donne lieu à un document de transfert contenant les adresses URL de téléversement:

            <?xml version="1.0" encoding="UTF-8"?>
            <vos:transfer xmlns:vos="http://www.ivoa.net/xml/VOSpace/v2.0">
              <vos:target>ad:CFHT/newFile</vos:target>
              <vos:direction>pushToVoSpace</vos:direction>
              <vos:protocol uri="ivo://ivoa.net/vospace/core#httpput">
                <vos:endpoint>http://uvic.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/transfer/CZhdXRoQ29kZT0wJnVybD1odHRwB1Ymxa8d2708b2c/newFile</vos:endpoint>
              </vos:protocol>
              <vos:protocol uri="ivo://ivoa.net/vospace/core#httpput">
                <vos:endpoint>http://usask.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/transfer/ZXRoPWdldCZhdXRoQ29kZT0wJnVybD1odHRwJTNBJ/newFile</vos:endpoint>
              </vos:protocol>
              <vos:protocol uri="ivo://ivoa.net/vospace/core#httpput">
                <vos:endpoint>http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/transfer/WdleHA9MjAxNTA2MjQyMzAwNTEmYXJjPVRFU1QmaW/newFile</vos:endpoint>
              </vos:protocol>
            </vos:transfer>
            

Documents des transferts négociés

Exécutez une commande HTTP POST sur un document de transfert sur /data/transfer (ou sur /data/auth/transfer), où le document de transfert adopte le format:
<?xml version="1.0" encoding="UTF-8"?>
<vos:transfer xmlns:vos="http://www.ivoa.net/xml/VOSpace/v2.0">
  <vos:target>ad:ARCHIVE/file</vos:target>
  <vos:direction>direction</vos:direction>
  <vos:protocol uri="ivo://ivoa.net/vospace/core#protocol" />
</vos:transfer>
et les valeurs des attributs sont les suivantes:
  • target: a le format ad:<ARCHIVE>/ad:<fileID>
  • direction: peut être pushToVoSpace (upload) or pullFromVoSpace (download)
  • protocol: peut être ivo://ivoa.net/vospace/core#httpget or ivo://ivoa.net/vospace/core#httpsget or ivo://ivoa.net/vospace/core#httpput or ivo://ivoa.net/vospace/core#httpsput
Donne lieu à un document de transfert de la réponse contenant des points d'extrémité (adresses URL) pour le téléversement et le téléchargement.
<?xml version="1.0" encoding="UTF-8"?>
<vos:transfer xmlns:vos="http://www.ivoa.net/xml/VOSpace/v2.0">
  <vos:target>ad:ARCHIVE/file</vos:target>
  <vos:direction>direction</vos:direction>
  <vos:protocol uri="protocol">
    <vos:endpoint>upload/download URL 1</vos:endpoint>
  </vos:protocol>
  <vos:protocol uri="protocol">
    <vos:endpoint>upload/download URL 2</vos:endpoint>
  </vos:protocol>
  <vos:protocol uri="protocol">
    <vos:endpoint>upload/download URL N</vos:endpoint>
  </vos:protocol>
</vos:transfer>
Le client devrait utiliser le point d'extrémité (adresse URL) supérieur pour le transfert des octets et utiliser les autres adresses URL s'il rencontre des erreurs.

Aide du CCDA

Pour obtenir de l'aide ou du soutien en ce qui a trait au service de données, envoyez un courriel à cadc@nrc.ca