zoukankan      html  css  js  c++  java
  • nodeJs 初学案例摘要

    在学习nodeJs的时候,照着文档做的,但是到最后的上传文件显示图片总是报错,

    所用的fs.renameSync出错:Error: EXDEV, cross-device link not permitted,查了一下是因为上传的文件是传到C盘,要读取的文件在D盘;所以

    fs.renameSync(files.upload.path, "/tmp/test.png");这一条就会报错;

    解决方法是:

    var readStream=fs.createReadStream(files.upload.path);
         console.log(files.upload.path)
         var writeStream=fs.createWriteStream("/tmp/test.jpg");
        readStream.pipe( writeStream );

    将文件先复制到同一个盘,在来读取。

    最终的代码:

    function upload(response,request){
    
      var form = new formidable.IncomingForm();
        
       form.parse(request, function(error, fields, files) {
        var readStream=fs.createReadStream(files.upload.path);
        var writeStream=fs.createWriteStream("/tmp/test.png");
        readStream.pipe( writeStream );
    
        response.writeHead(200, {"Content-Type": "text/html"});
        response.write("received image:<br/>");
        response.write("<img src='/show' />");
        response.end();
      });
    }

     

    var readStream=fs.createReadStream(files.upload.path);     console.log(files.upload.path)     var writeStream=fs.createWriteStream("/tmp/test.jpg");     /*util.pump(readStream,writeStream,function(){     fs.unlinkSync(files.upload.path);     })*/    readStream.pipe( writeStream );

  • 相关阅读:
    20180929 北京大学 人工智能实践:Tensorflow笔记02
    20180929 北京大学 人工智能实践:Tensorflow笔记01
    YOLOv3学习笔记
    编辑器上传漏洞
    IIS解析漏洞利用
    数据库备份及审查元素进行webshell上传
    burp suite 进行webshell上传
    BUGKU CFT初学之WEB
    CTFbugku--菜鸟初学
    理解PHP中的会话控制
  • 原文地址:https://www.cnblogs.com/scdisplay/p/5544146.html
Copyright © 2011-2022 走看看