//p86
var http = require('http');
/*
//向浏览器输出图片
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'img/png'});
var stream = require('fs').createReadStream('dsd.png');
stream.on('data', function (data) {
res.write(data);
});
stream.on('end', function () {
res.end();
})
}).listen(3000);*/
/*
//上个例子的简写
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'application/jpg'});
var stream = require('fs').createReadStream('dsd.png').pipe(res);
//console.dir(res);
}).listen(3000);*/
//monkey-patch例1
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});
var end=res.end;
//重写方法()
res.end=function(chunk,encode){
// console.log(chunk);
res.end=end;//保持原有功能
//添加自己的功能
res.end(chunk+"myEnd",encode);
res.end
}
res.end("fangchao ",'utf8');//网页最后输出结果为 fangchao myEnd
}).listen(3000);
//monkey-patch例子2
var fun = function (data) {
console.log('改写之前:' + data);
}
var fun1 = fun;
fun = function (data) {
fun = fun1;
fun('这是改写之后:' + data); //结果:== 改写之前:这是改写之后:fff
}
fun('fff');
猴子补丁 Monkey-patch(重写方法)
最新推荐文章于 2024-06-04 11:18:00 发布