routers.product
Product download route — streams files directly from STORM filesystem.
Attributes
Functions
|
Accept data products to stream and return file bytes or a TAR archive. |
Module Contents
- async routers.product.post_product(request)
Accept data products to stream and return file bytes or a TAR archive.
Supports two request formats selected by Content-Type:
`application/json` (default) — JSON array of {“did”: “…”, “path”: “…”} objects, where path is the absolute STORM filesystem path.
`application/xml` / `text/xml` — Raw VOTable XML as returned by a DataLink /v1/links query. The product-streamer paths are derived internally; no client-side parsing is required.
Streaming behaviour:
Single product, file path → streams raw bytes with HTTP Range request support.
Single product, directory path → streams an uncompressed TAR archive.
Multiple products → streams an uncompressed TAR archive containing all files.
Returns an IVOA AuthVO 401 challenge when no Bearer token is provided.
- Parameters:
request (fastapi.Request) –
- routers.product.product_router