【发布时间】:2020-07-23 02:58:00
【问题描述】:
我正在尝试使用 Firebase 存储让人们下载文件。我不会创建文件上传,我只是要通过 Firebase 控制台上传文件,因为我是唯一需要上传的人,而且我不需要上传太多。我用 HTML 和 CSS 创建了一个小型静态网站。我将它部署到 Firebase 托管,它工作正常。
我使用 Firebase 控制台将文件上传到存储,然后阅读了有关创建参考和从中下载文件的文档。我添加了必要的 js 库,然后在它下面是我的项目的配置信息。我尝试单击按钮,但没有任何反应。控制台出现此错误:
这是使用 Firebase 的一页的代码:
<html lang="en">
<head>
<meta name="robots" content="noindex, nofollow">
<link rel="icon" type="icon" href="/favicon.ico">
<link rel="stylesheet" type="text/css" href="/style.css">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Railsplitters Patrol</title>
</head>
<body>
<div class="topnav">
<img src="/logo.png" alt="Railsplitters Logo" width="50px" height="50px">
<a href="/index.html">Home</a>
<a href="/campouts.html">Campouts</a>
<a href="/archive.html">Full Archive</a>
</div>
<h1>Railsplitters Patrol List 7/22/20</h1>
<p>This is a list of everyone in the patrol and everyones patrol/troop position.</p>
<script src="/__/firebase/7.16.1/firebase-app.js"></script>
<script src="/__/firebase/7.16.1/firebase-analytics.js"></script>
<script src="/__/firebase/7.16.1/firebase-storage.js"></script>
<script>
const firebaseConfig = {
apiKey: "AIzaSyDpnXCe2mN3KSUaaQu03c1ItcPyN-SgXUQ",
authDomain: "railsplitters-patrol.firebaseapp.com",
databaseURL: "https://railsplitters-patrol.firebaseio.com",
projectId: "railsplitters-patrol",
storageBucket: "railsplitters-patrol.appspot.com",
messagingSenderId: "733170749990",
appId: "1:733170749990:web:cc4b43fc4f07cfebb34ce7",
measurementId: "G-MRDVNH7BLH"
};
firebase.initializeApp(firebaseConfig);
var storage = firebase.storage();
var storageRef = storage.ref();
var fileRef = storageRef.child('files/patrollist72220.docx');
function download() {
fileRef.getDownloadURL().then(function(url) {
var xhr = new XMLHttpRequest();
xhr.responseType = 'blob';
xhr.onload = function(event) {
var blog = xhr.response;
};
xhr.open('GET', url);
img.src = url;
}).catch(function(error) {
});
}
</script>
<button onclick="download()">Download the file</button>
</body>
</html>
我需要做什么来解决这个问题?这是我的第一个 Firebase 存储项目。我之前使用过 Firebase 身份验证,但从未获得过成功的结果,但我之前使用过 Firebase 托管和动态链接。我对 JavaScript 很陌生。
【问题讨论】:
-
请不要发布错误消息的截图或其他文字内容。而是发布实际文本,并使用 Stack Overflow 的格式化工具对其进行标记。当您发布错误消息时,我建议您也搜索它,因为我很确定之前已经讨论过几次。
标签: javascript firebase google-chrome firebase-storage