【发布时间】:2017-03-14 02:21:43
【问题描述】:
尝试从 Google CDN 请求图像并将其上传到 S3。
使用https://github.com/request/request 库和Node / Express;
图像返回正文字段并进行编码。不知道它是如何编码的。
给定一个 Google CDN 的 URL:
const fileURL = https://lh4.googleusercontent.com/EWE1234rFL006WfQKuAVrsYMOiKnM6iztPtLgXM5U…3i26LoPHQwPTQME7ne3XoMriKVjUo3hrhwWw1211223
request(fileURL, (err, res, body) => {
//NOT sure how to handle the response here??
//Trying base64
fs.writeFileSync(`.tmp/file1.png`, body, {encoding: 'base64'});
//Trying Binary
fs.writeFileSync(`.tmp/file.png`, body, {encoding: 'binary'});
}
body 返回为:
�PNG↵↵IHDRv&vл� IDATx�}���<z�f���];��o]��A�N�.po�/�/R���..............
1)。向googleusercontentGoogle CDN 请求图片(图片最初粘贴在 Google Doc 中)
2)。创建映像文件并写入服务器上的磁盘。
fs.writeFileSync 似乎都没有生成可读的图像文件。
任何有关处理此问题的建议都会很棒..
【问题讨论】:
-
你用什么上传到S3?您很可能可以按原样通过身体。
-
对不起,我要强调的问题是正在写入的图像不可读。要去编辑我的帖子。试图了解如何处理从 Google 返回的字符串并从中创建一个文件。
标签: node.js express amazon-s3 node-request google-cdn