文档章节

node.js学习笔记二(简单代码示例及模块化)

在人间2018
 在人间2018
发布于 2014/10/25 11:12
字数 478
阅读 47
收藏 0

前言:    

(书接上回,关于上次遇到node下输入while循环后无法退出的问题,有了方法:新起一个终端,然后结束node进程。结束进程的方法,上网一查,有各种各样的命令。对于我这种不熟悉命令行的人,果断找到一个最好记的方法:pkill -9 node)

     其实这两天参照网上做了好几个代码示例,只是不知道从何说起,直到今天看到这篇(http://www.nodebeginner.org/index-zh-cn.html)node入门介绍,决定先从一个简单示例代码及将其模块化开始。我只简单记录学习过程,具体内容解释请挪步上述网址。


废话少说,开始正文:

    1、新建工程,实现一个基础的http服务器功能并存在server.js文件中,代码如下:

var http = require("http");
http.createServer(function (request,response) {
	// body...
	console.log("request received");
	response.writeHead(200,{"Content-Type": "text/plain"});
	response.write("hello world!");
	response.end();
}).listen(8888);

    用node.js执行node server.js,然后用浏览器访问http://localhost:8888/,你会看到网页显示“hello world!”;


    2、将上述服务器代码模块化:

    具体做法,将上述server.js中代码做如下修改:

var http = require("http");
function start () {
	http.createServer(function (request,response) {
		// body...
		console.log("request received");
		response.writeHead(200,{"Content-Type": "text/plain"});
		response.write("hello world!  How are you, my dear");
		response.end();
	}).listen(8888);

	console.log("Server has Started");
}

exports.start = start();


    3、调用刚才实现的模块:

    创建一个index.js的文件,并编写如下代码:

var server = require("./server");
server.start;

    此时再用node.js执行index.js文件,即可调用http服务器模块的代码了,so easy! 

这篇简单记录接受http请求的方法,准备下一次实现接受到到请求后坐的一些简单操作。

© 著作权归作者所有

在人间2018
粉丝 1
博文 23
码字总数 8813
作品 0
海淀
程序员
私信 提问
学习 Node.js 笔记(一)

学习一种语言并不难, 学习这种语言背后的生态环境可就不那么容易了. 虽然我用 javascript 也不少时间了, 但实际关注的大多是(数学)算法, 较少关注 js 的其它部分, 而现在为了学习别的开源软件...

刘军兴
2015/11/26
0
0
一点感悟:《Node.js学习笔记》star数突破1000+

写作背景 笔者前年开始撰写的《Node.js学习笔记》 github star 数突破了1000,算是个里程碑吧。 从第一次提交(2016.11.03)到现在,1年半过去了。突然有些感慨,想要写点东西,谈谈这期间的...

程序猿小卡_casper
2018/06/06
0
0
鼓捣phantomjs(二) node.js模块化集成

著作权所有:http://www.cnblogs.com/zeusro/ 引用(爬虫)不给稿费的,切你jj 追忆似屎年华 在上一篇post(http://www.cnblogs.com/zeusro/p/4185196.html)里面,我留下了3个坑没有填平。 ...

amiba.org
2014/12/27
0
0
学习 Node.js 笔记(二)

继续学习 Node.js == 文件操作 == NodeJS 对比浏览器中的 js 重点(进步)是能操作文件... 通过内模块 `fs' (文档...) 实验一下, 进入 node 交互命令行: > var fs = require('fs'); // 引入 fs......

刘军兴
2015/11/26
49
0
瞅瞅JavaScript模块标准

模块是每门语言构建复杂系统的必备特性,JavaScript自然也不例外。JavaScript当前流行的模块化标准有CommonJS、AMD、CMD、ES6等等,本文对这些标准做了简单梳理,努力做到应用时不懵逼,不乱...

疯魔程序员
2017/08/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

定制专属二维码思路——实现【微信,QQ】扫码登录

效果演示 1.先在natapp实现外网映射(https://natapp.cn) 2.natapp.exe 3.生成token链接(先开启redis) //生成二维码token链接(生成二维码)http://p5gc9b.natappfree.cc/generateCode //...

须臾之余
16分钟前
4
0
android studio 使用CMAKE

原文地址 前言 之前,每次需要边写C++代码的时候,我的内心都是拒绝的。 1. 它没有代码提示!!!这意味着我们必须自己手动敲出所有的代码,对于一个新手来说,要一个字母都不错且大小写也要...

shzwork
18分钟前
0
0
volatile/CAS/atomicInteger/BlockQueue/线程交互/原子引用

import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger......

一只小青蛙
19分钟前
0
0
apache隐藏版本信息及设置网页缓存

实战:源码编译安装apache及调优技巧 实战环境: 生产环境中,部署了apache之后,我们应该从安全还是性能角度,在apache服务上线之前,对其做诸多的优化调试才行。 技巧1: 安装apache屏蔽a...

寰宇01
22分钟前
0
0
C 语言 二级指针操作文件 柔性数组使用

#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct _info* pInfo;struct _info{int line;int len;char data[0];}info;int getFil......

小张525
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部