How to serve files uploaded to Azure storage

I was wondering what is supposed to happen after the user uploads a file to tusd. I’m currently uploading to Azure, and the upload process itself is working great. I’m using Uppy as the JS client.

Is the intention that all GET requests to the file route through the tusd service?

Or, is there a way for the calling application to get the Azure URL of the file from tusd after upload? Or is the calling application supposed to know the Azure account + container, to access the file directly?

It also seems like tusd creates the container and file so that they require authorization to access. How do I make the file publicly accessible in Azure?

I figured out how to make the blobs publicly accessible with --azure-container-access-type blob

I’m still curious what the expectation is about how to construct the Azure URL. Does the client need to know the Azure account and container name, and also extract the unique file key from the tusd url? Or is there some better way to know the Azure URL?

tusd is not intended to be a file-serving service to end-users. We recommend you to access the file on Azure directly for better performance.

That depends on your application. The tusd hooks allow you to customize the post-processing of your files and you can choose to include the Azure URL in the responses for the tus client. You can read more at https://github.com/tus/tusd/blob/main/docs/hooks.md