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
Here, the url in the response contains a dicom tag "UR" with the value represents the location of the image.
27
+
29
28
The hostname of this Url represents the dicom service that is being used.
30
29
31
30
To breakdown the structure of the above urlm it consists of
32
-
1. hostname -> https://localhost:63838
33
-
2. path -> v2/partitions/foo
34
-
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
31
+
1. hostname -> `https://localhost:63838`
32
+
2. path -> `v2/partitions/foo`
33
+
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`
35
34
36
35
The feature allows to manipuate the hostname and the path of the response object if needed.
37
36
38
37
# How it works
39
38
This feature will allow modify the path of response url if directed by client based on the request headers they provided.
40
39
The modified header will be based on following two headers:
41
-
1. x-Forwarded-Host
42
-
2. x-Forwarded-Prefix
40
+
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`
41
+
42
+
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.
43
+
Example:
44
+
`X-Forwarded-Prefix: /prefix`
45
+
43
46
44
47
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).
45
48
46
49
If x-forwarded-host header is present in the request object, it would replace the host name with the value provided.
47
50
48
51
if x-forwarded-prefix header is present in the request object, it would replace the path with the value provided.
49
52
53
+
# List of API that can use forwarded headers for url manipulation
54
+
55
+
### STOW, WADO, worklist, operation status, querytag and querytagerror APIs
56
+
57
+
Details of a request header for a stow operation with the forwarded headers:
1. Forwarded headers donot 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.
62
95
63
-
2. These headers follow the standard .netcore structure.
96
+
2. This is only url manipulation. Client is responsible for mapping the headers and path provided in forwarded headers with the actual dicom service hostname and pathbase.
0 commit comments