我如何使用 google-cloud-storage 让 public 用户下载伤害表
How can i use google-cloud-storage to have public users download an injury form
当我 运行 通过本地主机单击该按钮时,它不会导致下载。我不确定为什么。
我想要的是 HTML 方面的按钮,以引起下载 docx 文件 "injury form"
从 'react' 导入 React;
从 "firebase";
导入 firebase
const Documents = () =>{
var storage = firebase.storage();
var docsRef = storage.ref('Documents/Injury form.docx');
const Download = () => {
docsRef.getDownloadURL().then(function(url) {
}).catch(function(error) {
switch (error.code) {
case 'storage/object-not-found':
// File doesn't exist
break;
case 'storage/unauthorized':
// User doesn't have permission to access the object
break;
case 'storage/canceled':
// User canceled the upload
break;
case 'storage/unknown':
// Unknown error occurred, inspect the server response
break;
}
});
}
return (
<div>
<button onClick={Download}>yoooo</button>d
</div>
)
}
export default Documents
我还为跨源访问 (CORS) 配置了 Cloud Storage 存储桶。如此处所述:https://firebase.google.com/docs/storage/web/download-files#cors_configuration
该功能不激活下载。它创建一个 link 到下载 URL。
您需要在函数中放置一个变量,使其等于传递给它的 URL。在这种情况下,通过 useState() 挂钩完成。
const [download, setDownload] = useState("blank");
var storage = firebase.storage();
var docsRef = storage.ref('Documents/Injury form.docx');
docsRef.getDownloadURL().then(function(url) {
setDownload(
url
)
})
然后通过
<a href={download}>the link to download it
如果使用的方法无效,可以到firebase控制台,右键点击上传到存储区的文件。从那里下载 URL 并创建一个
<a href="<your URL>"> Button </a>
这将创建一个 link 或激活下载的按钮。
在这种情况下,允许用户下载 phisio 网站的伤害表格。
当我 运行 通过本地主机单击该按钮时,它不会导致下载。我不确定为什么。
我想要的是 HTML 方面的按钮,以引起下载 docx 文件 "injury form"
从 'react' 导入 React; 从 "firebase";
导入 firebaseconst Documents = () =>{
var storage = firebase.storage();
var docsRef = storage.ref('Documents/Injury form.docx');
const Download = () => {
docsRef.getDownloadURL().then(function(url) {
}).catch(function(error) {
switch (error.code) {
case 'storage/object-not-found':
// File doesn't exist
break;
case 'storage/unauthorized':
// User doesn't have permission to access the object
break;
case 'storage/canceled':
// User canceled the upload
break;
case 'storage/unknown':
// Unknown error occurred, inspect the server response
break;
}
});
}
return (
<div>
<button onClick={Download}>yoooo</button>d
</div>
)
}
export default Documents
我还为跨源访问 (CORS) 配置了 Cloud Storage 存储桶。如此处所述:https://firebase.google.com/docs/storage/web/download-files#cors_configuration
该功能不激活下载。它创建一个 link 到下载 URL。
您需要在函数中放置一个变量,使其等于传递给它的 URL。在这种情况下,通过 useState() 挂钩完成。
const [download, setDownload] = useState("blank");
var storage = firebase.storage();
var docsRef = storage.ref('Documents/Injury form.docx');
docsRef.getDownloadURL().then(function(url) {
setDownload(
url
)
})
然后通过
<a href={download}>the link to download it
如果使用的方法无效,可以到firebase控制台,右键点击上传到存储区的文件。从那里下载 URL 并创建一个
<a href="<your URL>"> Button </a>
这将创建一个 link 或激活下载的按钮。
在这种情况下,允许用户下载 phisio 网站的伤害表格。