第9天response 响应渲染
今天我们的开发任务,是为stuwebfk框架增加response响应渲染功能。之前响应客户端的方式是通过res.write方法,这个过于低级。
基本的响应渲染功能,包括以下几个:
页面跳转 redirect
文本 text
静态页 static
下载 down
动态页 view
先前实现了静态页渲染,也就是使用static中间件。下面几节,着手开发其他的渲染方法。
文本渲染插件开发
文本渲染,就是通过res.text方法返回给客户端信息,而信息本身无论是什么,比如即使是html也会显示其源代码。
这个插件并不难,只要为响应头设置 Content-Type = text/plain 即可,既然这个插件如此简单,下面就显示出其源代码。
lib/text.js 源代码book
module.exports = function(req,res,next){
res.text = function(txt){
res.writeHead(200, {'Content-Type': 'text/plain'});
res.write(txt);
res.end();
}
next();
}在index.js中加入以下代码:
exports.text = require("./lib/text");到这里插件就算开发好了,下面我们用个例子测试一下效果。
var fk = require("../..")
,App = fk.App
,app = new App;
app.use(fk.text); // 加载text插件
app.get("/text",function(req,res){
res.text("<b>hello world</b>");
})
app.listen(3000)运行后,在浏览器打开 localhost:3000/text 就会显示出
<b>hello world</b>
也就是说不会用HTML渲染,而是直接显示出源代码。插件很简单,在实际应用中作用确很大。下一节,我们将开发页面跳转插件。