Node.js 实现第一个应用以及HTTP模块和URL模块应用
Posted 码上加油站
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Node.js 实现第一个应用以及HTTP模块和URL模块应用相关的知识,希望对你有一定的参考价值。
/*
实现一个应用,同时还实现了整个 HTTP 服务器。
* */
//1.引入http模块
var http=require(\'http\');
//2.用http模块创建服务
/*
req获取url信息 (request)
res 浏览器返回响应信息 (response)
* */
http.createServer(function(req,res){
// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
//设置 HTTP 头部,状态码是 200,文件类型是 html,字符集是 utf-8
res.writeHead(200, {\'Content-Type\': \'text/html; charset=utf-8\'});
res.write("你好 nodejs");
res.write(\'我是第一个nodejs程序\');
res.end(); /*结束响应*/
}).listen(8001);
到该文件夹下,cmd命令运行:
node hello.js
浏览器显示:
HTTP 模块、URL 模块
Node.js 中,将很多的功能,划分为了一个个 module(模块)。 Node.js 中的很多功能都是通过模块实现。
HTTP 模块的使用
如第一个代码块,
req.url URL 地址。所有的路由设计,都是通过 req.url 来实现的。
我们比较关心的不是拿到 URL,而是识别这个 URL。
url.parse() 解析 URL
url.format(urlObject) //是上面 url.parse() 操作的逆向操作
url.resolve(from, to) 添加或者替换地址
案例:
var http=require(\'http\');
var url=require(\'url\');
//2.用http模块创建服务
/*
req获取url信息 (request)
res 浏览器返回响应信息 (response)
* */
http.createServer(function(req,res){
//输入http://localhost:8001/news?aid=123 拿到aid
// 输入http://localhost:8001/news?aid=123&cid=3 拿到aid 和cid
//req.url 获取浏览器url输入的信息
res.writeHead(200, {\'Content-Type\': \'text/html; charset=utf-8\'});
if(req.url!=\'/favicon.ico\'){
//http://localhost:8001/news?aid=123
//console.log(req.url); //返回 /news?aid=123
var result=url.parse(req.url,true); //第一个参数是地址 第二个参数是true的话表示把get传值转换成对象
console.log(\'aid=\'+result.query.aid); /*获取url的get传值*/
console.log(\'cid=\'+result.query.cid);
}
res.write(\'你好 nodejs\');
res.end(); /*结束响应*/
}).listen(8001);
浏览器运行:
控制台打印:
以上是关于Node.js 实现第一个应用以及HTTP模块和URL模块应用的主要内容,如果未能解决你的问题,请参考以下文章