我正在使用 Loopback 组件存储 来上传图像到服务器。
我想将通过服务器上传的每个图像转换为 缩略图 并保存到容器中。 最初,我使用本地文件存储来存储文件,一切都很正常。
在文件存储中,我使用了 "quickthumb" 将图像转换为缩略图,然后将原始图像和缩略尺寸图像保存到容器中。
但现在我想使用 Loopback 组件存储将我的图像存储到 Amazon S3 中。按照文档,我可以轻松地将图像上传到 Amazon S3 存储桶。但我不知道如何将图像调整大小以适应缩略图,并在 Amazon S3 服务器上存储不同版本的图像及其原始图像。 以下是我在使用文件存储时的操作:
现在要将其转换为缩略图大小 使用 quickthumb 以下是我在 loopback 中使用它的方式。
引用: common/models/container.js
我想将通过服务器上传的每个图像转换为 缩略图 并保存到容器中。 最初,我使用本地文件存储来存储文件,一切都很正常。
在文件存储中,我使用了 "quickthumb" 将图像转换为缩略图,然后将原始图像和缩略尺寸图像保存到容器中。
但现在我想使用 Loopback 组件存储将我的图像存储到 Amazon S3 中。按照文档,我可以轻松地将图像上传到 Amazon S3 存储桶。但我不知道如何将图像调整大小以适应缩略图,并在 Amazon S3 服务器上存储不同版本的图像及其原始图像。 以下是我在使用文件存储时的操作:
现在要将其转换为缩略图大小 使用 quickthumb 以下是我在 loopback 中使用它的方式。
引用: common/models/container.js
module.exports = function(Container) {
var qt = require('quickthumb');
Container.afterRemote('upload', function(ctx, res, next) {
var file = res.result.files.file[0];
var file_path = "./server/storage/" + file.container + "/" + file.name;
var file_thumb_path = "./server/storage/" + file.container + "/thumb/" + file.name;
qt.convert({
src: file_path,
dst: file_thumb_path,
width: 100
}, function (err, path) {
});
next();
});
};
现在,在将图像上传到S3服务器之前,我需要实现调整图像大小的功能,但我需要一些类似express
语法,如req.files.image
,但在loopback中不可能实现吗?请帮忙。