Http模块

2019-08-21  本文已影响0人  向上而活

Node.js中,将很多的功能,划分为了一个个mudule,大陆的书翻译为模块;台湾的书,翻译为模组。

这是因为,有一些程序需要使用fs功能(文件读取功能),有一些不用的,所以为了效率,你用啥,你就require啥。

//这个案例简单讲解http模块 
//引用模块var http = require("http");
 //创建一个服务器,回调函数表示接收到请求之后做的事情 
var server = http.createServer(function(req,res){ //req参数表示请求,res表示响应 
console.log("服务器接收到了请求" + req.url);
 res.end(); });
 //监听端口 
server.listen(3000,"127.0.0.1");
image.png

设置一个响应头:

res.writeHead(200,{"Content-Type":"text/plain;charset=UTF8"});
image.png

我们现在来看一下req里面能够使用的东西。
最关键的就是req.url属性,表示用户的请求URL地址。所有的路由设计,都是通过req.url来实现的。
我们比较关心的不是拿到URL,而是识别这个URL。
识别URL,用到两个新模块,第一个就是url模块,第二个就是querystring模块

字符串查询,用querystring处理

querystring.parse('foo=bar&baz=qux&baz=quux&corge')
// returns
{ foo: 'bar', baz: ['qux', 'quux'], corge: '' }

// Suppose gbkDecodeURIComponent function already exists,
// it can decode `gbk` encoding string
querystring.parse('w=%D6%D0%CE%C4&foo=bar', null, null,
  { decodeURIComponent: gbkDecodeURIComponent })
// returns
{ w: '中文', foo: 'bar' }
pathname:/abcd/abcder/1.html
 query:id=123&sex=man&age=18
上一篇 下一篇

猜你喜欢

热点阅读