// The route answers 303 to a presigned URL, so navigating to it IS the // download (`8fc6b1af`, option (a)). It used to answer JSON describing the // URL, which is why this was a fetch-then-assign. function downloadVersion(versionId) { window.location.href = '/api/versions/' + versionId + '/download'; }