Tôi đang sử dụng Meteor-CollectionFS và GraphicsMagick 1.3.22 để thay đổi kích thước hình ảnh được tải lên Amazon S3. Hình ảnh không thay đổi kích thước, nó chỉ xuất hiện trong S3 đầy đủ kích cỡ. Tôi cũng đã thử đặt các hình ảnh đã thay đổi kích thước trong một cửa hàng riêng biệt, nhưng hình ảnh vẫn xuất hiện đầy đủ kích thước trong cửa hàng mới.Bộ sưu tập MeteorFS: S3 GraphicsMagick Không đổi kích thước hình ảnh
Đây là máy chủ của tôi/collections.js
FS.debug = true;
var imageStore = new FS.Store.S3("images", {
bucket: "meteor-s3-test-data",
accessKeyId: "XXX",
folder: "images",
secretAccessKey: "XXX",
transformWrite: createThumb
});
var createThumb = function(fileObj, readStream, writeStream) {
gm(readStream, fileObj.name()).resize('100', '100').stream().pipe(writeStream);
};
ProfileCollection = new Mongo.Collection('ProfileCollection');
PhotoCollection = new FS.Collection("PhotoCollection",
{
stores: [
imageStore,
],
filter: {
maxSize: 3145728,
allow: {
contentTypes: ['image/*'],
extensions: ['png', 'PNG', 'jpg', 'JPG', 'jpeg', 'JPEG']
}
}
});
và khách hàng của tôi/collections.js
var imageStore = new FS.Store.S3("images");
ProfileCollection = new Mongo.Collection('ProfileCollection');
PhotoCollection = new FS.Collection("PhotoCollection",
{
stores: [
imageStore,
],
filter: {
maxSize: 3145728,
allow: {
contentTypes: ['image/*'],
extensions: ['png', 'PNG', 'jpg', 'JPG', 'jpeg', 'JPEG']
}
}
});
và log FS.debug tôi
FileWorker ADDED - calling deleteChunks for i5BrCN6rZwLoPuXy4
Meteor._wrapAsync has been renamed to Meteor.wrapAsync
TempStore is mounted on storage.gridfs
FileWorker ADDED - calling deleteChunks for 8BFzyhkoLyE4RGPES
FS.HTTP.unmount:
{}
Registered HTTP method URLs:
/cfs/files/:collectionName/:id/:filename
/cfs/files/:collectionName/:id
/cfs/files/:collectionName
token: eyJhdXRoVG9rZW4iOiJyYmx0cFd3YzUxVUlqd0JfaVhrck1RSVdmbE5wRmFKdXZFYjZvRXBWek5kIn0=
GET FILERECORD: 8BFzyhkoLyE4RGPES
Read file "me.jpg" bytes 0-14428/14429
createReadStream images
createReadStreamForFileKey images
Insertion in security = true
token: eyJhdXRoVG9rZW4iOiJyYmx0cFd3YzUxVUlqd0JfaVhrck1RSVdmbE5wRmFKdXZFYjZvRXBWek5kIn0=
HTTP PUT (update) handler received chunk: 0
GET FILERECORD: eLdMFShwMftTZAL4r
Insertion in security = true
createWriteStream _tempstore, internal: true
createWriteStreamForFileKey _tempstore
SA GridFS - DONE!
-----------STORED STREAM _tempstore
-----------CLOSE STREAM _tempstore
TempStore progress: Received 1 of 1 chunks for me.jpg
UPDATE: {"$set":{"uploadedAt":"2015-10-30T01:02:35.356Z"},"$unset":{"chunkCount":1,"chunkSum":1,"chunkSize":1}}
me.jpg was successfully uploaded. You are seeing this informational message because you enabled debugging and you have not defined any listeners for the "uploaded" event on the PhotoCollection collection.
FileWorker ADDED - calling saveCopy images for eLdMFShwMftTZAL4r
saving to store images
createWriteStream images, internal: false
createWriteStreamForFileKey images
FS.TempStore creating read stream for eLdMFShwMftTZAL4r
createReadStream _tempstore
createReadStreamForFileKey _tempstore
GRIDFS { _id: 5632c1ab10a4ad2c48853ad5, root: 'cfs_gridfs._tempstore' }
FileWorker CHANGED - calling saveCopy images for eLdMFShwMftTZAL4r
saving to store images
createWriteStream images, internal: false
createWriteStreamForFileKey images
FS.TempStore creating read stream for eLdMFShwMftTZAL4r
createReadStream _tempstore
createReadStreamForFileKey _tempstore
GRIDFS { _id: 5632c1ab10a4ad2c48853ad5, root: 'cfs_gridfs._tempstore' }
FileWorker REMOVED - removing all stored data for 8BFzyhkoLyE4RGPES
---SA REMOVE
-----------FINISH STREAM images
-----------FINISH STREAM images
-----------FINISH STREAM images
-----------FINISH STREAM images
SA S3 - DONE!!
-----------STORED STREAM images
-----------STORED STREAM images
SA images stored PhotoCollection/eLdMFShwMftTZAL4r-me.jpg
FS.File._saveChanges: images
UPDATE: {"$set":{"copies.images":{"name":"me.jpg","type":"image/jpeg","size":14429,"key":"PhotoCollection/eLdMFShwMftTZAL4r-me.jpg","updatedAt":"2015-10-30T01:02:35.790Z","createdAt":"2015-10-30T01:02:35.790Z"}}}
FS.File._saveChanges: _original
UPDATE: {"$set":{"original":{"name":"me.jpg","updatedAt":"2015-10-23T19:33:23.512Z","size":14429,"type":"image/jpeg"}}}
me.jpg was successfully saved to the images store. You are seeing this informational message because you enabled debugging and you have not defined any listeners for the "stored" event on the PhotoCollection collection.
FileWorker ADDED - calling deleteChunks for eLdMFShwMftTZAL4r
---SA REMOVE
SA S3 - DONE!!
-----------STORED STREAM images
-----------STORED STREAM images
SA images stored PhotoCollection/eLdMFShwMftTZAL4r-me.jpg
FS.File._saveChanges: images
UPDATE: {"$set":{"copies.images":{"name":"me.jpg","type":"image/jpeg","size":14429,"key":"PhotoCollection/eLdMFShwMftTZAL4r-me.jpg","updatedAt":"2015-10-30T01:02:35.884Z","createdAt":"2015-10-30T01:02:35.884Z"}}}
FS.File._saveChanges: _original
UPDATE: {"$set":{"original":{"name":"me.jpg","updatedAt":"2015-10-23T19:33:23.512Z","size":14429,"type":"image/jpeg"}}}
me.jpg was successfully saved to the images store. You are seeing this informational message because you enabled debugging and you have not defined any listeners for the "stored" event on the PhotoCollection collection.
token: eyJhdXRoVG9rZW4iOiJyYmx0cFd3YzUxVUlqd0JfaVhrck1RSVdmbE5wRmFKdXZFYjZvRXBWek5kIn0=
GET FILERECORD: eLdMFShwMftTZAL4r
Read file "me.jpg" bytes 0-14428/14429
createReadStream images
createReadStreamForFileKey images
token: eyJhdXRoVG9rZW4iOiJDMTFjd3lwUnJVU3NKRlZNUXNodWxQblJScXkyOXFxZklZcjc4bVBTT2pJIn0=
GET FILERECORD: eLdMFShwMftTZAL4r
Read file "me.jpg" bytes 0-14428/14429
createReadStream images
createReadStreamForFileKey images
^C[[email protected] udormio_build]$ [[email protected] udormio_build]$ no bundle/main.js
FileWorker ADDED - calling deleteChunks for-bash: [[email protected]: command not found
i5BrCN6rZwLoPuXy4
Meteor._wrapAsync has been renamed to Meteor.wrapAsync
TempStore is mounted on storage.gridfs
FileWorker ADDED - calling deleteChunks for 8BFzyhkoLyE4RGPES
FS.HTTP.unmount:
{}
[[email protected] udormio_build]$ FileWorker ADDED - calling deleteChunks for i5BrCN6rZwLoPuXy4
Registered HTTP method URLs:
/cfs/files/:collectionName/:id/:filename
/cfs/files/:collectionName/:id
/cfs/files/:collectionName
token: eyJhdXRoVG9rZW4iOiJyYmx0cFd3YzUxVUlqd0JfaVhrck1RSVdmbE5wRmFKdXZFYjZvRXBWek5kIn0=
GET FILERECORD: 8BFzyhkoLyE4RGPES
Read file "me.jpg" bytes 0-14428/14429
createReadStream images
createReadStreamForFileKey images
Insertion in security = true
token: eyJhdXRoVG9rZW4iOiJyYmx0cFd3YzUxVUlqd0JfaVhrck1RSVdmbE5wRmFKdXZFYjZv-bash: FileWorker: command not found
RXBWek5kIn0=
HTTP PUT (update) handler received chunk: 0
GET FILERECORD: eLdMFShwMftTZAL4r
Insertion in security = true
createWriteStream _tempstore, internal: true
createWriteStreamForFileKey _tempstore
SA GridFS - DONE!
Cảm ơn.