遇到一些问题,特此记录下
一、nodejs 直接读取图片返回给浏览器
1. 读取文件 var content = fs.readFileSync(url,”binary”); //格式必须为 binary 否则会出错
2. response.write(content,”binary”); //格式必须为 binary,否则会出错
二、如果是 nodejs 客户端读取图片文件,再传给 nodejs 写的 httpServer
1. 客户端读取文件 var content = fs.readFileSync(url,”binary”);
2. 把内容转为数组 var buffer = new Buffer(content); 传给 httpServer
这一步需要特别注意,一定不能把 content 当成普通的字符串处理传给 httpServer
3. httpServer 解析出数组 var list = …
4. httpServer 把数组转为 Buffer, var buffer = new Buffer(list);
5. 返回 response.write(buffer.toString(),”binary”); //注意,这里必须转为字符串,不能以 Buffer 传给浏览器