cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Announcements
Are you new to Dropbox? Our Newcomers group is the perfect place to learn the basics, find out more here.

Dropbox API Support & Feedback

Find help with the Dropbox API from other developers.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Download shared file from shared link

Download shared file from shared link

DavidM27
Explorer | Level 4
Go to solution

Hello,

 

I'm building a web app using Dropbox API, that app may be use to share some files to people that does not have a dropbox, so I created a share link via the API and then I want those people to be able to download it directly from the app.
I need the file to be download in the app because the file has to be manipulated before being downlodable by the uer.
What I tried was to use the share link and make an XHR request with the share link replacing the query parameter ?dl=0 by ?dl=1.
Buty obvioulsy this can not work because dropbox does not let me download it because of the CORS policy.
Can you tell if it is possible to download a file without being connected to dropbox and directly from my web app ?

1 Accepted Solution

Accepted Solutions

Greg-DB
Dropbox Staff
Go to solution

Unfortunately I don't have a good solution to offer here. Using a shared link with the parameter modification is the best way to share read-only access to a file when the recipient doesn't have a Dropbox account. As you found though, these can't be requested programmatically in browser JavaScript due to the CORS policy.

 

Alternatively, you could have your server do the download first, and then pass the contents down to end-user's browser instead. This would come at the expense of extra server bandwidth consumption though.

View solution in original post

3 Replies 3

Greg-DB
Dropbox Staff
Go to solution

Unfortunately I don't have a good solution to offer here. Using a shared link with the parameter modification is the best way to share read-only access to a file when the recipient doesn't have a Dropbox account. As you found though, these can't be requested programmatically in browser JavaScript due to the CORS policy.

 

Alternatively, you could have your server do the download first, and then pass the contents down to end-user's browser instead. This would come at the expense of extra server bandwidth consumption though.

DavidM27
Explorer | Level 4
Go to solution

Thank you Greg for your reply.
As a workaround I tried to use the dl.dropboxusercontent.com redirect link but it does work only with file not with folder... So we'll have to find another solution.

 

eliotcole
Explorer | Level 4
Go to solution

Hi, @DavidM27 , you could use the cloud API functionality of the various cloud based automation programs out there like Power Automate (Flow), automate.io, zapier, etc.

 

There might be a limit for the file size (Google used to max out at 50MB) either on Dropbox or the other end of the equation.

 

Equally, instead of open-ended download, you could have your users use a local folder with something like Dropbox, and create an app to copy it to their specific folder, which will then sync to their local folder.

( this seems like a valid use of all the bricks in this lego set 😉 ... )

 

Need more support?
Who's talking

Top contributors to this post

  • User avatar
    eliotcole Explorer | Level 4
  • User avatar
    DavidM27 Explorer | Level 4
  • User avatar
    Greg-DB Dropbox Staff
What do Dropbox user levels mean?