javascript - capture de nœud, le téléchargement de l'image est incomplet
迷茫
迷茫 2017-05-16 13:28:49
0
3
805

J'ai utilisé le module de demande de nœud pour capturer des images par lots, mais j'ai constaté que certaines images n'étaient pas complètement téléchargées. Certaines images étaient affichées normalement et d'autres étaient grises.
Et le téléchargement incomplet des images se produit également de manière aléatoire, pas nécessairement laquelle.
Le code est le suivant :

var arr=["http:www.a.com/1.png","http:www.a.com/2.png","http:www.a.com/3.png"....]
for(var i=0;i<30;i++){
    lodPic(arr[i])
}
function loadPic(url){
    var _url=encodeURI(url);
    request.head(_url,function(err,res,body){
        if(err){
            console.log(err);
        }
        request(url).pipe(fs.createWriteStream(ph)).on('close',function(){
            console.log('finfish');
        });;
    });
}
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

répondre à tous(3)
仅有的幸福
var request = require('request');

var options = {
  url: 'https://api.github.com/repos/request/request',
  headers: {
    'content-length': 1024,
  }
};

function callback(error, response, body) {
    //
}

request(options, callback);

Regardez le code et essayez de définir la longueur du contenu sur une valeur plus grande. J'ai déjà rencontré ce problème lors de l'écriture d'un serveur statique utilisant cpp. Certaines images étaient plus grandes que cette valeur, donc seulement la moitié d'entre elles ont été transférées avec succès. Certaines images sont plus petites que cette valeur et peuvent donc être transmises intégralement. Je ne sais pas si vous avez également ce problème.

仅有的幸福

Il y a peut-être un problème avec 30 écritures simultanées sur le disque. Pouvez-vous essayer de réduire le nombre d'écritures simultanées ?
Ou essayez parallelLimit() de async.js ?

滿天的星座

La méthode HEAD de http n'a pas de corps de réponse Si vous utilisez cette méthode http pour demander des images, vous n'obtiendrez certainement rien.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal