Afficher en anglais

Partage via


Qu’est-ce que la manipulation d’URL ?

L’utilisation de la manipulation d’URL vous permet de personnaliser l’URL de l’emplacement de l’image qui se trouve dans l’objet de réponse.

Pour les opérations d’API suivantes, le service DICOM retourne l’URL complète de l’emplacement de l’image dans l’objet de réponse sous une balise DICOM (UR) dans l’objet de réponse.

  • Récupérer Instance
  • Récupérer WorkItems
  • Récupérer OperationStatus
  • Résoudre QueryTag
  • Résoudre QueryTagError

Voici un exemple d’URL complète d’emplacement d’image. L’URL se trouve dans la réponse standard d’une opération STOW pour un service DICOM dont la partition de données est activée, avec le nom de partition « foo ».

https://localhost:63838/v2/partitions/foo/studies/1.2.826.0.1.3680043.8.498.13230779778012324449356534479549187420/series/1.2.826.0.1.3680043.8.498.77033797676425927098669402985243398207/instances/1.2.826.0.1.3680043.8.498.13273713909719068980354078852867170114

L’URL précédente se compose de trois parties :

  • nom d’hôte ->https://localhost:63838 (nom d’hôte du service DICOM)
  • chemin d’accès ->v2/partitions/foo (chemin d’accès qui représente la version du service DICOM utilisé et le nom de la partition de données, si elle est activée)
  • Chemin d’accès standard web DICOM ->studies/1.2.826.0.1.3680043.8.498.13230779778012324449356534479549187420/series/1.2.826.0.1.3680043.8.498.77033797676425927098669402985243398207/instances/1.2.826.0.1.3680043.8.498.13273713909719068980354078852867170114

Cette fonctionnalité vous permet de personnaliser le chemin d’accès de l’URL de l’image, si le client le spécifie, en fonction des en-têtes de requête fournis.

Fonctionnement

L’URL modifiée est basée sur les deux en-têtes suivants.

  • X-Forwarded-Host : nom de domaine de l’hôte d’origine (celui que le client a demandé avant que le proxy ou l’équilibreur de charge ne traite la requête). Par exemple : X-Forwarded-Host: www.example.com

  • X-Forwarded-Prefix : chemin d’accès de l’URL ou du préfixe d’origine qui faisait partie de la requête du client avant que le proxy ne transfère ou ne change la requête. Par exemple : X-Forwarded-Prefix: /prefix

Ces en-têtes font partie des en-têtes transférés standard .NET Core.

Si l’en-tête x-forwarded-host est présent dans l’objet de requête, il remplace le nom d’hôte par la valeur fournie.

Si l’en-tête x-forwarded-prefix est présent dans l’objet de requête, il remplace le chemin d’accès par la valeur fournie.

Liste des services qui peuvent utiliser des en-têtes transférés pour la manipulation d’URL

  • Store (STOW-RS) : permet de charger les objets DICOM sur le serveur.
  • Retrieve (WADO-RS) : permet de télécharger les objets DICOM à partir du serveur.
  • Service de liste de travail (UPS Push et Pull SOPs) : gérez et suivez les flux de travail d’imagerie médicale.
  • Balises de requête étendues : définissez des balises personnalisées pour interroger des données DICOM.
  • Statut de l’opération

Voici les détails d’un en-tête de requête pour une opération STOW avec les en-têtes transférés :

  • Path : ../studies/{study}
  • Méthode : POST
  • Headers :
    • Accept: application/DICOM+json
    • Content-Type: multipart/related; type="application/DICOM"
    • Authorization : Bearer {token value}
    • X-Forwarded-Host: {nom de domaine de l’hôte d’origine}
    • X-Forwarded-Prefix: {chemin d’accès de l’URL d’origine}
  • Corps :
    • Content-Type: application/DICOM pour chaque fichier chargé, séparé par une valeur de délimitation

Exemple :

Vous trouverez ci-dessous un exemple de balise DICOM avec VR = UR pour une opération STOW quand les en-têtes transférés ne sont pas fournis.

https://localhost:63838/v2/partitions/foo/studies/1.2.826.0.1.3680043.8.498.13230779778012324449356534479549187420/series/1.2.826.0.1.3680043.8.498.77033797676425927098669402985243398207/instances/1.2.826.0.1.3680043.8.498.13273713909719068980354078852867170114

Vous trouverez ci-dessous un exemple de balise DICOM avec VR = UR pour une opération STOW quand les en-têtes transférés sont fournis.

Exemple d’objet de requête :

  • Chemin d’accès : https://localhost:63838/v2/partitions/foo/studies/studies/{study}
  • Méthode : POST
  • Headers :
    • Accept: application/DICOM+json
    • Content-Type: multipart/related; type="application/DICOM"
    • Authorization : Bearer {token value}
    • X-Forwarded-Host: API.powershare.com
    • X-Forwarded-Prefix: /newbasePath
  • Corps :
    • Content-Type: application/DICOM pour chaque fichier chargé, séparé par une valeur de délimitation

URL de l’image : https://API.powershare.com/newbasePath/studies/1.2.826.0.1.3680043.8.498.13230779778012324449356534479549187420/series/1.2.826.0.1.3680043.8.498.45787841905473114233124723359129632652/instances/1.2.826.0.1.3680043.8.498.12714725698140337137334606354172323212

Éléments à ne pas oublier

  • Les en-têtes transférés n’ont pas besoin d’être utilisés ensemble. Si nécessaire, remplacez le nom d’hôte et non le chemin d’accès. Seul l’en-tête d’hôte transféré peut être utilisé. De même, s’il est nécessaire de remplacer le chemin d’accès, seul l’en-tête de préfixe transféré peut être utilisé.
  • Le client est responsable du mappage du nom d’hôte et du chemin d’accès fournis dans les en-têtes transférés au nom d’hôte et à la base de chemin d’accès appropriés du service DICOM.

Remarque

DICOM® est une marque déposée de la National Electrical Manufacturers Association pour ses publications de standards relatifs aux communications numériques des informations médicales.