【问题标题】:Firebase Storage and Cloud functions: how to load content from url and save into storage?Firebase 存储和云功能:如何从 url 加载内容并保存到存储中?
【发布时间】:2018-11-20 03:27:37
【问题描述】:
当用户可以编写图像的 url 时,我有实时数据库。
创建/更新后,我已经能够触发可以从实时数据库中读取图像 url 的云功能
我现在需要从网络上下载图片(所以这不是上传)并将其保存在 Firebase 存储中。
我找不到获取 Web 资源并存储到 Firebase 存储的单个示例。
能否请您指出正确的解决方案?
我的想法是对数据库上的 url 的创建/更新做出反应,然后获取(我可以使用 fetch npm 包吗??),然后使用 url 作为密钥将获取的内容保存到存储桶中
但是获取+保存获取的数据是我现在无法做到的
【问题讨论】:
标签:
node.js
firebase
npm
firebase-realtime-database
firebase-storage
【解决方案1】:
在有人因为“off-topc”而关闭此问题之前,我会编写自己的解决方案。
const bucket = admin.storage().bucket();
const axios = require('axios');
const response = await axios.post(BASE_URL, data_to_post, config);
console.log("Response.status", response.status);
const cache_file_name = `page-cache/page-${pageNumber}.html`;
const cache_file_options = {
metadata : {
contentType : 'text/html'
}
};
const cache_file = bucket.file(cache_file_name);
await cache_file.save(response.data, cache_file_options);