Ich arbeite an einem Node.js-Projekt, das auf der Antwort von getObject
von AWS beruht. Derzeit kann ich auf die Daten zugreifen, die ich brauche, und sie in einer Variablen speichern (header
), aber ich weiß nicht, wie ich sie in der Hauptfunktion bereitstellen kann.Wie man eine Variable aus dem AWS getObject-Aufruf in Node.js zurückgibt
TileStreamerS3.prototype.Init = function(filepath, index, s3config){
var retval = false;
AWS.config.update({accessKeyId: s3config.access_key, secretAccessKey: s3config.secret_key});
var blc = new BlockLibraryConfigs();
var awsConfig = blc.awsConfig;
AWS.config.update({region: awsConfig.region});
var aws = new AWS.S3();
var params = {
Bucket: s3config.bucket,
Key: s3config.tile_directory + filepath,
Range: 'bytes=0-27'
};
aws.getObject(params, function(err, data){
if(err == null){
var header = bufferpack.unpack('<7I', data.Body);
return header;
}
});
};
Wie gebe ich die header
Variable zurück? Ich sah eine mögliche Lösung, die JQuery verwendet, aber ich bin auf Windows und habe Probleme, JQuery mit Node arbeiten zu lassen. Ich möchte diesen Weg nicht gehen müssen, wenn es einen besseren Weg dafür gibt.
UPDATE: Ich weiß, dass es mehrere Fragen bezüglich der Rückgabe von Werten aus asynchronen Funktionen gibt. Ich denke, was mich auslöst, ist, dass aws.getObject()
eine Funktion ist, die eine andere Funktion als Parameter einnimmt. Ich möchte den header
Wert von der Funktion zurückgeben, die ein Parameter für die aws.getObject()
Funktion ist. Außerdem kann ich die getObject()
Funktion nicht ändern.
jQuery funktioniert nur auf dem Web-Browser/Front-End. NodeJS ist der Server/das Backend. Sie können nicht zusammen arbeiten. –
@BlazeSahlzen dann warum gibt es ein npm Paket dafür? https://www.npmjs.com/package/jQuery –
Es ist für Sie da, wenn Sie HTML-Daten auf der Serverseite manipulieren müssen. –