18 Nodejs 读取图片

  • Post author:
  • Post category:其他




读取/调用文件

// d18_readimg.js
var http=require('http');
var optfile=require('./models/d18_optfile');
http.createServer(function(request, response){
    response.writeHead(200, {'Content-Type':'image/jpeg'});
    if(request.url!=='/favicon.ico'){ //清除2次访问
    	optfile.readimg('./imgs/mn.jpeg', response); //图片名: mn.jpeg 其它格式也行
    }
}).listen(8000); //监听端口
console.log('Server running at http://127.0.0.1:8000/');

注意1编码格式差异:

response.writeHead(200, {‘Content-Type’:‘text/html; charset=utf-8’}); // 针对文本文件

response.writeHead(200, {‘Content-Type’:‘image/jpeg’}); // 针对图片格式文件

注意2调用图片时,不能同时操作其它,否则图片无法显示



异步图片读取

// d18_optfile.js
var fs=require('fs'); //node.js自带fs文件操作类
module.exports={
	readimg: function(path, res){ //异步读图片
		fs.readFile(path,'binary', function(err,filedata){
			if(err){
				console.log(err);
				return;
			}else{
				console.log('输出文件'); 
				res.write(filedata, 'binary'); //二进制发送
				res.end();
			}
		});
	}

fs.readFile(path,‘binary’, function(err,filedata) // 以二进制度方式读

res.write(filedata, ‘binary’); // 以二进制方式写到前台



版权声明:本文为weixin_44406595原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。