Les événements d'envoi de téléchargement S3 fonctionnent localement avec deferred.notify () mais pas sur le serveur

J'envoie un objet à s3 pour télécharger et localement je reçois un événement 'httpUploadProgress'. Cela notifie un appel .progress sur la fonction, puis met à jour un enregistrement avec sa progression. Cela fonctionne bien localement mais pas sur le serveur. Toute idée serait appréciée. J'ai inclus deux extraits de code. J'utilise des serveurs google, je ne sais pas si c'est un problème avec le code ou les paramètres du serveur: /

<div class="snippet" data-lang="js" data-hide="false"> <div class="snippet-code">

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;
}
</div> </div>

<div class="snippet" data-lang="js" data-hide="false"> <div class="snippet-code">

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;
                        }
                })
        })
</div> </div>
0
Est-ce que le téléchargement est correct? Vous avez mentionné les serveurs Google avec S3. Avez-vous vérifié si vos paramètres CORS fonctionnent correctement? J'ai rencontré un problème similaire à cause de cela.
ajouté l'auteur Rahat Mahbub, source

Il n'y a pas de réponses.

0