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 相关文章推荐
nodejs调用cmd命令实现复制目录
May 04 NodeJs
Nodejs获取网络数据并生成Excel表格
Mar 31 NodeJs
详解NodeJS框架express的路径映射(路由)功能及控制
Mar 24 NodeJs
简单好用的nodejs 爬虫框架分享
Mar 26 NodeJs
详解Windows下安装Nodejs步骤
May 18 NodeJs
mac下的nodejs环境安装的步骤
May 24 NodeJs
NodeJS自定义模块写法(详解)
Jun 27 NodeJs
基于nodejs+express4.X实现文件下载的实例代码
Jul 13 NodeJs
详解nodejs通过代理(proxy)发送http请求(request)
Sep 22 NodeJs
Nodejs监控事件循环异常示例详解
Sep 22 NodeJs
如何利用nodejs实现命令行游戏
Nov 24 NodeJs
node快速搭建后台的实现步骤
Feb 18 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
discuz安全提问算法
2007/06/06 PHP
解析php中static,const与define的使用区别
2013/06/18 PHP
php自定义函数实现二维数组按指定key排序的方法
2016/09/29 PHP
php如何修改SESSION的生存存储时间的实例代码
2017/07/05 PHP
swoole和websocket简单聊天室开发
2017/11/18 PHP
laravel dingo API返回自定义错误信息的实例
2019/09/29 PHP
Javascript学习笔记 delete运算符
2011/09/13 Javascript
JavaScript代码简单实现求杨辉三角给定行的最大值
2013/10/29 Javascript
jquery.form.js实现将form提交转为ajax方式提交的方法
2015/04/07 Javascript
浅谈javascript语法和定时函数
2015/05/03 Javascript
介绍一个简单的JavaScript类框架
2015/06/24 Javascript
易操作的jQuery表单提示插件
2015/12/01 Javascript
jQuery操作动态生成的内容的方法
2016/05/28 Javascript
JS实现的跨浏览器解析XML文件实例
2016/06/21 Javascript
获取JS中网页各种高宽与位置的方法总结
2016/07/27 Javascript
关于js原型的面试题讲解
2016/09/25 Javascript
jQuery倒计时代码(超简单)
2017/02/27 Javascript
浅谈angular2的http请求返回结果的subcribe注意事项
2017/03/01 Javascript
Node.js使用orm2进行update操作时关联字段无法修改的解决方法
2017/06/13 Javascript
详解Angular调试技巧之报错404(not found)
2018/01/31 Javascript
angularjs实现table增加tr的方法
2018/02/27 Javascript
js中split()方法得到的数组长度问题
2018/07/19 Javascript
详解webpack4之splitchunksPlugin代码包分拆
2018/12/04 Javascript
浅谈Webpack多页应用HMR卡住问题
2019/04/24 Javascript
Python交换变量
2008/09/06 Python
简单谈谈Python中函数的可变参数
2016/09/02 Python
Tensorflow环境搭建的方法步骤
2018/02/07 Python
flask 框架操作MySQL数据库简单示例
2020/02/02 Python
古驰英国官网:GUCCI英国
2020/03/07 全球购物
什么是方法的重载
2013/06/24 面试题
学校党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
2014年保密工作总结
2014/11/22 职场文书
python基础之文件处理知识总结
2021/05/23 Python
JavaScript 数组去重详解
2021/09/15 Javascript
python数字图像处理数据类型及颜色空间转换
2022/06/28 Python
CSS 实现磨砂玻璃(毛玻璃)效果样式
2023/05/21 HTML / CSS