You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/healthcare-apis/dicom/dicom-proxy-url-support.md
+21-23Lines changed: 21 additions & 23 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,47 +10,43 @@ ms.author: buchvarun
10
10
---
11
11
12
12
# What is URL manipulation
13
-
URL manipulation allows customizing URL of the image location that is in response object.
13
+
Using URL manipulation allows you to customize the URL of the image location that is in the response object.
14
14
15
-
DICOM service returns the fully qualified URL of the image location in response object under DICOM tag (UR) in the response object of following API operations:
15
+
For the following API operations the DICOM service returns the fully qualified URL of the image location in the response object, under a DICOM tag (UR) in the response object.
16
16
1. Retrieve Instance
17
17
2. Retrieve WorkItems
18
18
3. Retrieve OperationStatus
19
19
4. Resolve QueryTag
20
20
5. Resolve QueryTagError
21
21
22
-
An example of fully qualified image location of URLin the standard response for a STOW operation for a DICOM service that has data partition enabled with partition name "foo" is as below:
22
+
The following is an example of a fully qualified image location URL. This could be found in the standard response for a STOW operation for a DICOM service that has data partition enabled, with partition name "foo".
To breakdown the structure of the above URL, it consists of following three parts:
26
+
The preceding URLconsists of three parts:
27
27
1. hostname -> `https://localhost:63838` (the hostname of DICOM service)
28
-
2. path -> `v2/partitions/foo` (path that represents the version of DICOM service being used and the datapartition name if it enabled)
29
-
3. DICOM web standard path -> `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`
28
+
2. path -> `v2/partitions/foo` (the path that represents the version of DICOM service being used and the datapartition name, if enabled)
29
+
3.The DICOM web standard path -> `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`
30
30
31
-
This feature will allow to customize the path of the image URL, if directed by client based on the request headers they have provided.
31
+
This feature allows you to customize the path of the image URL, if directed by the client, based on the request headers provided.
32
32
33
33
# How it works
34
-
The modified URL will be based on following two headers:
35
-
1. X-Forwarded-Host: This represents the domain name of the original host (the one the client requested before the proxy or load balancer handled the request). Example: `X-Forwarded-Host: www.example.com`
36
-
37
-
2. X-Forwarded-Prefix: This represents the original URL path or prefix that was part of the client’s request before the proxy forwarded or changed the request.
38
-
Example:
39
-
`X-Forwarded-Prefix: /prefix`
34
+
The modified URL will be based on following two headers.
35
+
1. X-Forwarded-Host: The domain name of the original host (the one the client requested before the proxy or load balancer handled the request). For example: `X-Forwarded-Host: www.example.com`
40
36
37
+
2. X-Forwarded-Prefix: the original URL path or prefix that was part of the client’s request before the proxy forwarded or changed the request. For example: `X-Forwarded-Prefix: /prefix`
41
38
42
39
These headers are a part of [.net core standard forwarded headers](https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/proxy-load-balancer?view=aspnetcore-8.0#forwarded-headers).
43
40
44
-
If x-forwarded-host header is present in the request object, it would replace the host name with the value provided.
41
+
If `x-forwarded-host` header is present in the request object, it replaces the host name with the value provided.
45
42
46
-
if x-forwarded-prefix header is present in the request object, it would replace the path with the value provided.
43
+
If `x-forwarded-prefix` header is present in the request object, it replaces the path with the value provided.
47
44
48
-
# List of API that can use forwarded headers for URL manipulation
45
+
# List of API's that can use forwarded headers for URL manipulation
49
46
50
47
### STOW, WADO, worklist, operation status, querytag and querytagerror APIs
51
48
52
-
Details of a request header for a STOW operation with the forwarded headers:
53
-
49
+
Here are the details of a request header for a STOW operation with the forwarded headers:
54
50
* Path: ../studies/{study}
55
51
* Method: POST
56
52
* Headers:
@@ -63,13 +59,15 @@ Details of a request header for a STOW operation with the forwarded headers:
63
59
* Content-Type: application/DICOM for each file uploaded, separated by a boundary value
64
60
65
61
## Example:
66
-
### Value of DICOM tag with VR = UR for a STOW operation when the above headers are not provided:
62
+
The following is an example of a DICOM tag with VR = UR for a STOW operation when the above headers are not provided:
1. Forwarded headers do not have to be used together. If there is a need to just replace hostname and not path, only forwarded host header can be used. Similarly, if there is a need to just replace path, only forwared prefix header can be used.
87
+
1. Forwarded headers do not have to be used together. If there is a need to, simply replace hostname and not path. Only the forwarded host header can be used. Similarly, if there is a need to replace the path, only the forwarded prefix header can be used.
90
88
91
-
2.Client is responsible for mapping the hostname and path provided in forwarded headers with correct DICOM service hostname and pathbase.
89
+
2.The client is responsible for mapping the hostname and path provided in forwarded headers to the correct DICOM service hostname and pathbase.
0 commit comments