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模块应用的主要内容,如果未能解决你的问题,请参考以下文章

Node.js 创建第一个应用

Node基本概念以及基本用法一

Node.js 学习一 第一个Node.js应用--Hello World!

Node.js:创建应用+回调函数(阻塞/非阻塞)

Node.js创建第一个应用

Node.js 创建第一个应用