使用http模块怎么发送一张图片?
发布于 11 年前 作者 codeid 5870 次预览 最后一次回复是 11 年前 来自
var server = http.createServer(function(req,res){ res.setHeader(‘Content-Type’,‘text/html’); res.end(‘Hello World’); }); server.listen(3000,‘127.0.0.1’); 可以给浏览器发送字符串,如果我想给浏览器仅仅发送一张图片该怎么做? var server = http.createServer(function(req,res){ res.setHeader(‘Content-Type’,‘image/png’); //假如拿到图片数据,var image,如何发送到浏览器显示呢? }); server.listen(3000,‘127.0.0.1’);
5 回复
你是问上传图片吗? 还是静态服务器?
这里有一个静态文件服务器的例子:
只要输出对应mime类型,然后通过readStream输入流的pipe方法流向res(输出流)
var http = require( ‘http’ ); var fs = require( ‘fs’ ); http.createServer( function ( req, res ) { res.writeHead( 200, { ‘content-type’: ‘image/jpeg’ } ); var cs = fs.createReadStream( ‘./sl.jpg’, { ‘flag’: ‘r’ } ); cs.pipe( res ); //只读流流向输出流 } ).listen( 7878, function () { console.log( ‘server is start’ );//服务器都有静态文件功能 } )
.pipe 出去
谢谢,搞定了
多谢,搞定了