我正在编写代码,该代码使用 gcloud-node 将使用 node-fetch 获取的文件上传到 Google Cloud Storage 中的存储桶。
到目前为止一切正常,但我无法找出如何Content-Type
在 GCloud 上设置文件的文件,否则文件将下载为application/octet-stream
.
这是我到目前为止的代码:
function saveImage(response, destFile) {
return new Promise((resolve, reject) => {
if (response.status !== 200) {
reject(new Error('Bad Response'));
}
// How do I set this on the file uploaded to the bucket?
const contentType = response.headers.get('Content-Type');
try {
const file = bucket.file(destFile);
const writeStream = file.createWriteStream();
writeStream.on('error', err => {
reject(err);
});
writeStream.on('finish', () => {
resolve(getPublicUrl(destFile));
});
response.body.pipe(writeStream);
} catch (e) {
reject(e);
}
});
}