nodejs实例解析(输出hello world)


Posted in NodeJs onJanuary 03, 2017

下面将带领大家一步步学习nodejs,知道怎么使用nodejs搭建服务器,响应get/post请求,连接数据库等。

搭建服务器页面输出hello world

var http = require('http'); 
http.createServer(function (request, response) { 
 response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'}); 
 if(request.url!=="/favicon.ico"){ //清除第2此访问 node.js bug,第二次访问/favicon.ico
 console.log('访问'); 
 response.write('hello,world 世界'); 
 response.end();//不写则没有http协议尾
 } 
}).listen(8000); 
console.log('Server running at http://127.0.0.1:8000/'); 
/* 
启动服务 
cmd下执行: 
node 1_helloworld.js 
浏览器访问:http://localhost:8000 
*/

基本语句说明:

1)require 语句,模块通过它加载。

对于该语句的解析可参见文章《node.js require() 源码解读》(https://3water.com/article/76308.htm)

2)http.createServer(function(req, res){  }).listen(8000);

方法说明:

该函数用来创建一个HTTP服务器,并将 requestListener 作为 request 事件的监听函数。最后调用listen函数,监听端口。

接收参数:

requestListener   请求处理函数,自动添加到 request 事件,函数传递两个参数:

    req  请求对象,想知道req有哪些属性,可以查看 “http.request 属性整合”。

    res   响应对象 ,收到请求后要做出的响应。想知道res有哪些属性,可以查看 “http.response属性整合”。

3)response.writeHead(200,  {'Content-Type':  'text/html;  charset=utf-8'}); 

方法说明:

向请求的客户端发送响应头。

接收参数:

statusCode   HTTP状态码,如200(请求成功),404(未找到)等。

headers     类似关联数组的对象,表示响应头的每个属性

该函数在一个请求内最多只能调用一次,如果不调用,则会自动生成一个响应头。

4)response.end()

方法说明:

结束响应,告诉客户端所有消息已经发送。当所有要返回的内容发送完毕时,该函数必须被调用一次。

如何不调用该函数,客户端将永远处于等待状态。

将上面的代码复制保存到1_helloworld.js,cmd下执行语句:node  1_helloworld.js 。再去浏览器访问:http://localhost:8000 

nodejs实例解析(输出hello world)

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

NodeJs 相关文章推荐
基于 Docker 开发 NodeJS 应用
Jul 30 NodeJs
NodeJS学习笔记之Http模块
Jan 13 NodeJs
NodeJS和BootStrap分页效果的实现代码
Nov 07 NodeJs
用Nodejs搭建服务器访问html、css、JS等静态资源文件
Apr 28 NodeJs
深入浅析Nodejs的Http模块
Jun 20 NodeJs
让nodeJS支持ES6的词法----babel的安装和使用方法
Jul 31 NodeJs
nodejs实现的简单web服务器功能示例
Mar 15 NodeJs
PHPStorm中如何对nodejs项目进行单元测试详解
Feb 28 NodeJs
NodeJS实现同步的方法
Mar 02 NodeJs
nodejs的安装使用与npm的介绍
Sep 11 NodeJs
Node.js实现爬取网站图片的示例代码
Apr 04 NodeJs
使用 Koa + TS + ESLlint 搭建node服务器的过程详解
May 30 NodeJs
Highcharts+NodeJS搭建数据可视化平台示例
Jan 01 #NodeJs
nodejs利用http模块实现银行卡所属银行查询和骚扰电话验证示例
Dec 30 #NodeJs
浅谈Nodejs中的作用域问题
Dec 26 #NodeJs
nodeJS删除文件方法示例
Dec 25 #NodeJs
详解nodejs 文本操作模块-fs模块(五)
Dec 23 #NodeJs
详解Nodejs的timers模块
Dec 22 #NodeJs
详解nodejs 文本操作模块-fs模块(四)
Dec 22 #NodeJs
You might like
PHP内置的Math函数效率测试
2014/12/01 PHP
PHP连接Nginx服务器并解析Nginx日志的方法
2015/08/16 PHP
五个jQuery图片画廊插件 推荐
2011/05/12 Javascript
简单实例处理url特殊符号&处理(2种方法)
2013/04/02 Javascript
js获取下拉列表的值和元素个数示例
2014/05/07 Javascript
基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建模框架
2014/09/26 NodeJs
创建js对象和js类的方法汇总
2014/12/24 Javascript
详解AngularJS的通信机制
2015/06/18 Javascript
老生常谈Javascript中的原型和this指针
2016/10/09 Javascript
微信小程序实现给循环列表添加点击样式实例
2017/04/26 Javascript
ng-events类似ionic中Events的angular全局事件
2018/09/05 Javascript
npm配置国内镜像资源+淘宝镜像的方法
2018/09/07 Javascript
小程序转发探索示例
2019/02/19 Javascript
JavaScript函数式编程(Functional Programming)声明式与命令式实例分析
2019/05/21 Javascript
图解NodeJS实现登录注册功能
2019/09/16 NodeJs
JS原形与原型链深入详解
2020/05/09 Javascript
浅谈Vue 函数式组件的使用技巧
2020/06/16 Javascript
[54:29]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第二场
2018/04/09 DOTA
[01:18:21]EG vs TNC Supermajor小组赛B组败者组第一轮 BO3 第一场 6.2
2018/06/03 DOTA
[01:01:51]EG vs VG Supermajor小组赛B组 BO3 第二场 6.2
2018/06/03 DOTA
[43:41]OG vs Newbee 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
Python字符串格式化输出方法分析
2016/04/13 Python
Python之列表的插入&替换修改方法
2018/06/28 Python
OpenCV 边缘检测
2019/07/10 Python
python 直接赋值和copy的区别详解
2019/08/07 Python
Belle Maison倍美丛官网:日本千趣会旗下邮购网站
2016/07/22 全球购物
乌克兰设计师和品牌的服装:Love&Live
2020/04/14 全球购物
如何打印出当前源文件的文件名以及源文件的当前行号
2015/04/05 面试题
大学生活动策划方案
2014/02/10 职场文书
精神文明单位申报材料
2014/05/02 职场文书
2015年会计人员工作总结
2015/05/22 职场文书
2015年庆祝国庆节66周年演讲稿
2015/07/30 职场文书
初中英语教学随笔
2015/08/15 职场文书
污染环境建议书
2015/09/14 职场文书
2016年先进班集体事迹材料
2016/02/26 职场文书
浅谈MySQL 亿级数据分页的优化
2021/06/15 MySQL