express 获取本地文件夹下的图片和文件

 

在routes文件夹下创建了getImages.js文件,getImages.js中的代码:

var express = require('express');
var router = express.Router();
var fs = require('fs');
var image = require("imageinfo"); 

router.get('/', function(req, res, next) {
  
    function readFileList(path, filesList) {
      var files = fs.readdirSync(path);
      files.forEach(function (itm, index) {
          var stat = fs.statSync(path + itm);
          if (stat.isDirectory()) {
          //递归读取文件
              readFileList(path + itm + "/", filesList)
          } else {

              var obj = {};//定义一个对象存放文件的路径和名字
              obj.path = path;//路径
              obj.filename = itm//名字
              filesList.push(obj);
          }

      })

  }
  var getFiles = {
    getFileList: function (path) {
        var filesList = [];
        readFileList(path, filesList);
        return filesList;
    },
    getImageFiles: function (path) {
        var imageList = [];

        this.getFileList(path).forEach((item) => {
            var ms = image(fs.readFileSync(item.path + item.filename));

            ms.mimeType && (imageList.push(item.path +item.filename))
        });
        res.send(imageList);
        return imageList;

    }
};
   getFiles.getImageFiles("F:/images/");
//getFiles.getFileList("./public/images/");
});
    
module.exports = router;

运行后,打开浏览器

图片地址成功返回

 

posted @ 2019-06-21 15:47  伊娜陈  阅读(2422)  评论(0编辑  收藏  举报