第6天 路由功能——query.js 插件开发
query.js的作用很简单,就是把 url 问号后的参数,转换为json对象,然后保存在req.query中即可。
query.js 插件开发
query.js的作用很简单,就是把 url 问号后的参数,转换为json对象,然后保存在req.query中即可。
我们知道,所有的插件都会通过app.use(middle)
的形式加入,而插件的写法是function middle(req,res,next){ }
。所以第一步就要在lib目录下建立一个query.js文件。下面是插件的源代码和说明。
var url = require("url"), qs = require("querystring"); function query(req,res,next){ var querystring = url.parse(req.url).query; // 请求参数部分 // 判断是否有参数 if(querystring){ var queryObj = qs.parse(querystring); // 转换为json格式 req.query = queryObj; // 赋值 } next(); } module.exports = query;
这个中间件,使用了node.js核心模块 querystring
,它有个方法parse
可以把字符串形式的查询参数字符串,转换为json格式。
最后我们修改stuwebfk/index.js
加入以下代码
exports.App = require("./lib/App"); exports.static = require("./lib/static"); exports.query = require("./lib/query");
这样外界就可以通过require得到query模块了。
下面我们做一个例子,用来测试query插件的作用。
var App = require("../..").App, query = require("../..").query, app = new App; // 加入query中间件 app.use(query); app.get("/about",function(req,res){ res.write("my name is "+req.query.name); res.end(); }) app.listen(3000);
运行程序,并打开浏览器,输入 localhost:3000/about?name=okok , 这时候浏览器的内容应该是
my name is okok
思考一下整个插件的开发过程,并自己动手实际的开发,然后进行下一步的开发。下一节,我们要通过req.params
的形式得到:xxx
形式的url参数。
很赞哦! ( 0
)
相关文章
- 河池市宜州区第一中学“美丽中国,关爱地球” 地理知识竞赛成功举办
- 浙大,生日快乐!
- 特色心理教育筑牢师生战疫“心”防线
- 喜迎二十大 奋进新征程 ——初中部举行“青春如火 超越自我”助力中考英文歌曲比赛
- 数字资源引领未来 丹心擘画教育蓝图
- 喜迎二十大 青春心向党——宜州区第一中学离队入团仪式
- 2022年中小学生(幼儿)“5·12”防灾减灾专题教育活动
- 自编自导舞台剧沉浸式讲述党史
- 我校举行“百警进校园”防范电信诈骗宣教活动
- 辉映心希望,一起向未来 ——宜州区第一中学举行冲刺高考心理团辅活动
- 我校唐郁林老师开展助力高考学法讲座《高考数学解题的自然思维和理性思维》
- 春野躬耕育苹草,杏坛播种待鹿鸣 ——我校高三年级作文专题讲座开讲