初学node---1

知道node已经有一段时间了,但是一直没有静下心来仔细的研究它,今天偶然看到技术大牛的文章,决定从现在开始用心的学一下。。。

首先就是根据你的系统安装好node环境,然后建一个test.js文件:

1 console.log("hello node");

然后在控制台运行test.js文件:

1 node test.js

输出结果如下:

1 hello node

这样一个简单的node入门程序就完成了。。。哈哈,感觉还不错是吧。

注:node调试时不要用alert,会报错!

node实际上是一个http服务器,在写node程序时,我们要对程序进行模块化,模块化是以文件为单位的,把test.js更名为server.js,然后再把里面的内容改为一个模块。对于一个node的文件,其实它里面的内容是在一个封闭的环境中执行。要想共享给其他模块使用,就必须绑定在exports对象上。

 1 var http = require("http");
 2 exports.start = function(){
 3     http.createServer(function(request, response) {
 4         console.log("Request received...");
 5         response.writeHead(200, {"Content-Type": "text/plain"});
 6         response.write("Hello node");
 7         response.end();
 8     }).listen(3000);
 9     console.log("server start...");
10 }

再建一个index.js作为路口文件,放在server.js同级目录即可。

1 var server = require('./server');
2 server.start();

这样在控制台,运行node index ,再打开某一浏览器,输入http://localhost:3000/ ,就可以看到控制台输出

1 Request received...

分析上面脚本:

  1. 引入依赖,这是前端AMD规范未流行前, 非常神奇的东西。不过一个项目这么大,肯定要分成N个目录N个文件,各人负责一部分,减少合并冲突的风险
  2. require("http")吐出的http对象是一个原生对象,类似于前端的alert, setTimeout,非常常用。而这个http对象更是后端的中流砥柱,WEB应用离不开它
  3. http.createServer方法要接收一个函数,俗称回调。以后你会看到越来越多回调,nodejs的世界就是回调的世界,nodejs的发展史就是跟回调的抗争史
  4. 这个回调传给你两个重要对象,请求对象与响应对象。response要往前端输出东西,我们需要设置响应头(response.writeHead),告诉浏览器接着下来要怎么处理我们的内容。因为有的东西可能会当成script脚本,有的当成图片,有的当成CSS文件,有的要当成附件下载……response.write就是用来输出内容。输出结束了要调用end方法,这其实是方便response执行end回调。
  5. http.createServer 其实是返回一个Server实例,它有一个listen方法,它是用于监听某一端口。

 

posted @ 2015-08-19 15:04  徐洋sunny  阅读(181)  评论(0)    收藏  举报