मैं एस 3 पर एक छवि अपलोड करने की कोशिश कर रहा हूं लेकिन जब मैं s3.putObject (पैराम्स, कॉलबैक) कहता हूं, तो मेरा कॉलबैक कभी नहीं बुलाया जाता है और कोई त्रुटि लॉग नहीं होती है।S3.putObject - कॉलबैक कभी नहीं कहा जाता है
var params = {
Key: key,
Body: imageData,
ContentLength: imageData.byteCount,
ContentType: contentType,
};
this.s3.putObject(params, function(err, data) {
console.log('here');
if (err) {
callback(err);
return;
}
callback(null, key);
});
कहाँ पैरामीटर { Key: 'e2f99bf3a321282cc7dfaef69fe8ca62.jpg', Body: {imageData parsed from request using node-multiparty}, ContentLength: 27802, ContentType: 'image/jpeg', }
मैं मान्य है this.s3 सत्यापित किया है और typeof this.s3.putObject समारोह की उम्मीद है:
यहाँ प्रासंगिक कोड है।
आपको एनपीएम से 'नॉक' मॉड्यूल स्थापित करने और उसे आवश्यकतानुसार कुछ अंतर्दृष्टि मिल सकती है जो प्रिंट करेगा कि वास्तव में कौन सी यूआरएल का अनुरोध किया जा रहा है। यदि प्रोग्राम कॉलबैक के लिए प्रतीक्षा कर रहा है, तो शायद फ़ायरवॉल टीसीपी कनेक्शन प्रयास को अनदेखा कर रहा है। क्या आपने प्रोग्राम को कई मिनट तक लटका दिया है, यह देखने के लिए कि क्या अंततः समय समाप्त हो गया है और कॉलबैक को तब बुलाया जाता है? –
क्या आपका प्रोग्राम एसिंक घटना से पहले मूल्य निष्पादन समाप्त कर सकता है? एडब्ल्यूएस लैम्ब्डा के साथ एक समान विषय देखें: https://stackoverflow.com/questions/28449363/why-is-this-http-request-not-working-on-aws-lambda –