我的问题是我正在使用Firebase存储上载和下载文件。一切正常,除了我需要“保存文件”对话框来下载文件。当前浏览器正在打开当前选项卡中的那些文件,尽管浏览器无法读取的文件正在触发“保存对话框”。
这是我用于上传文件的代码
function uploadFileAsPromise (file, attachments, index) {
var metadata = {
contentDisposition: 'attachment; filename=\"'+(moment().unix()+file.name)+'\"',
};
return new Promise(function (resolve, reject) {
var storageRef = storage.ref("attachments/"+(moment().unix()+file.name));
//Upload file
var task = storageRef.put(file);
//Update progress bar
task.on('state_changed',
//listeners
);
});
}
这是html中的代码,应该可以给我“保存对话框”。
<a download href="https://firebasestorage.googleapis.com/v0/b/sf-firestore.appspot.com/o/attachments%2F1546685444Capture.PNG?alt=media&token=60562b91-0cd8-420b-b345-0c6af937f259" class="selected-files">
</a>
答案 0 :(得分:0)
(代表问题作者发布的解决方案)。
我忘了像下面这样在put语句中传递元数据
var task = storageRef.put(file, metadata);
现在正在工作。