Heim > Web-Frontend > js-Tutorial > Zwei node.js-Methoden zum Herunterladen von Bildern

Zwei node.js-Methoden zum Herunterladen von Bildern

小云云
Freigeben: 2018-03-03 09:03:43
Original
3930 Leute haben es durchsucht

Dieser Artikel stellt Ihnen hauptsächlich zwei Methoden zum Herunterladen von Bildern in node.js vor. Ich hoffe, er kann Ihnen helfen.

Der spezifische Code lautet wie folgt:

var request=require("request");
var fs=require("fs");
function download1(url,filename,fn){
request(url).pipe(fs.createWriteStream(filename).on("close",function(err,res){
if(err){
console.log(err);
}else{
fn&&fn();
}
}))
}
function download2(url,filename,fn){
request.get({uri:url, encoding:'binary'},function(err,res){
if(!err){
fs.writeFile(filename,res.body,"binary",function(err,res){
if(!err){
fn&&fn();
}else{
console.log(err);
}
})
}
})
}
Nach dem Login kopieren

ps: Schauen wir uns den Implementierungscode von nodejs an, der Remote-Bilder herunterlädt. Der spezifische Code lautet wie folgt:

var express = require('express');
var request = require('request');
var http = require('http');
var url = require('url');
var fs = require("fs");
var router = express.Router();
/* GET home page. */
router.get('/', function (req, res, next) {
  var url = "http://www.valu.cn/images/1.gif";
  //request('http://www.valu.cn/images/1.gif').pipe(fs.createWriteStream('./public/upload/downImg/logonew.png'));
  var req = http.get(url, function (res) {
    var imgData = "";
    res.setEncoding("binary"); //一定要设置response的编码为binary否则会下载下来的图片打不开
    res.on("data", function (chunk) {
      imgData += chunk;
    });
    res.on("end", function () {
      fs.writeFile("./public/upload/downImg/logonew.png", imgData, "binary", function (err) {
        if (err) {
          console.log("保存失败");
        }
        console.log("保存成功");
      });
    });
    res.on("error", function (err) {
      console.log("请求失败");
    });
  });
  req.on('error', function (err) {
    console.log("请求失败2" + err.message);
  });
  res.render('index', {title: '首页2'});
});
module.exports = router;
Nach dem Login kopieren

Verwandte Empfehlungen:

PHP-Remote-Download-Bildcode-Sharing

PHP-Download-Bild auf lokaler Serverinstanz-Sharing

Detaillierte Erläuterung des regelmäßigen PHP-Abgleichs von Remote-Bildadressen in Artikeln und des Herunterladens von Bildern auf lokale Instanzen

Das obige ist der detaillierte Inhalt vonZwei node.js-Methoden zum Herunterladen von Bildern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage