1

Dies ist meine erste Lambda-Funktion bei AWS.AWS Lambda erhält den Fehler "Kann das Modul 'gm' nicht finden in node.js 4.3

Ich möchte nur ein JPG auf S3 zu einem PNG konvertieren. Bisher habe ich diese bekam:

'use strict'; 

let aws = require('aws-sdk'); 
let im = require('imagemagick'); 
let s3 = new aws.S3(); 

exports.handler = (event, context, callback) => { 
    const bucket = event.Records[0].s3.bucket.name; 
    const key = decodeURIComponent(event.Records[0].s3.object.key.replace(/\+/g, ' ')); 
    const s3params = { 
     Bucket: bucket, 
     Key: key 
    }; 
    s3.getObject(s3params, function(err,s3obj) { 
     //s3obj has the image in .Body... 
    }); 
} 

Ich habe versucht herauszufinden, wie ImageMagick verwenden, um diese JPG zu PNG zu konvertieren. Die Konvertierungsfunktion benötigt Dateien, die nicht gepuffert sind. Ich kann nicht herausfinden, wie es geht, und es scheint keine Beispiele zu geben, die ich finden kann.

Hilfe!

+0

finden Sie in diesem Artikel http://jice.lavocat.name/ blog/2015/image-conversion-using-amazon-lambda-und-s3-in-node.js/ – error2007s

+0

Danke, aber ich habe diesen Artikel gesehen, jedoch erstens, dass die Größenänderung nicht einfache Konvertierung und zweitens funktioniert es nicht. Wenn ich verwende, dass es sagt, dass es das Modul "gm" nicht finden kann - musste ich es ändern, um "imagemagick" nicht "gm" zu verlangen. –

+0

"gm" ist am wahrscheinlichsten im GraphicsMagick-Paket, nicht in ImageMagick. –

Antwort

0

Hier ist, wie ich in graphicsmagick auf Lambda gezogen haben: var gm = require('gm').subClass({ imageMagick: true });

Beachten Sie, dass einige Funktionen von ImageMagick (EPHEMRAL, URL, HTTPS, MVG und MSL) in der imagemagick vorinstalliert Modul von AWS Lambda deaktiviert Team wegen Sicherheitslücken, die Anfang Mai in der ImageMagick-Bibliothek entdeckt wurden (siehe https://imagetragick.com) und hier weiter erklärt werden: AWS Lambda not working along with the gm module. Normalerweise können Sie gm verwenden, um ein Bild aus dem Internet zu ziehen, und dann würden Sie diesen Stream als Ihr PNG speichern, aber Sie können in den oben genannten Ausgaben auf dem

+1

Wenn ich das tue, bekomme ich eine Fehlermeldung, dass es Modul GM nicht finden kann. –

Verwandte Themen