S3上传发送事件在本地使用deferred.notify()而不是在服务器上

我发送一个对象s3上传,在本地我得到一个'httpUploadProgress'事件。 这会通知函数的进度调用,然后用它的进度更新logging。 它在本地工作正常,但不在服务器上。 任何想法,将不胜感激。 我已经包含了两个代码片段。 我正在使用谷歌服务器,不知道这是代码或服务器设置的问题:/

s3.uploadVideo = function (filepath, videoName, publisher_id) { var deferred = q.defer(); var body = fs.createReadStream(filepath); var s3obj = new AWS.S3({ params: { Bucket: transcodeConfig.NonTranscodedVideoBucket, Key: publisher_id + '/' + videoName } }); s3obj.upload({Body: body}). on('httpUploadProgress', function (evt) { deferred.notify(evt); return }). send(function (err, data) { if (!err) { deferred.resolve(data); return } else { deferred.reject(err); return } }); //deferred.resolve({}) return deferred.promise; } 

 aws_api.s3.uploadVideo(file.path, fileName, publisher_id ).progress(function(progress){ return models.videos.findOneAndUpdate({_id : trackingId},{uploadProgress: progress, file_type:fileExtension},function(err,data){ if(err){ return next(err); }else{ return data; } }) }) 

       

网上收集的解决方案 "S3上传发送事件在本地使用deferred.notify()而不是在服务器上"