一:章节前言

二:Node.js概述

1:使用node.js能够解决什么问题

2:实现高性能服务器

3:非阻塞型I/O及事件环形机制

4:node.js适合开发的程序

三:node.js安装

一、Node.js 安装配置

Node.js 提供在Windows和Linux上安装, 本文将以Windows上Node最新版本v6.9.3为例来学习,不足之处还望指正:

1.  Window 上安装Node.js

32 位安装包下载地址 : https://nodejs.org/dist/v6.9.3/node-v6.9.3-x86.msi

64 位安装包下载地址 : https://nodejs.org/dist/v6.9.3/node-v6.9.3-x64.msi

安装步骤如下:

1.1 双击node-v6.9.3-x64.msi ,然后一直next下去

恭喜你安装成功啦!

2:检测PATH环境变量是否配置了Node.js

点击开始=》运行=》输入"cmd" => 输入命令"path",输出如下结果:

我们可以看到环境变量中已经包含了 D:\soft\develop\developSoft\nodeJs\;

检查Node.js版本


二:NodeJs 的 第一个简单应用:Hello World


事实上,我们的 Web 应用以及对应的 Web 服务器基本上是一样的。

在我们创建 Node.js 第一个 "Hello, World!" 应用前,让我们先了解下 Node.js 应用是由哪几部分组成的:

  1. 引入 required 模块:我们可以使用 require 指令来载入 Node.js 模块。

  2. 创建服务器:服务器可以监听客户端的请求,类似于IIS 、Apache 、Nginx 等 HTTP 服务器。

  3. 接收请求与响应请求 服务器很容易创建,客户端可以使用浏览器或终端发送 HTTP 请求,服务器接收请求后返回响应数据。

具体操作如下:

1. 创建一个网站的根目录,例如:D:\soft\develop\developSoft\nodeJs\Demo

2. 在根目录下创建一个js文件,例如:server.js

3. 在server.js内撸下如下代码:

  1 var http = require('http');//我们使用 require 指令来载入 http 模块,并将实例化的 HTTP 赋值给变量 http
2
3 http.createServer(function (request, response) {
4
5 // 发送 HTTP 头部
6 // HTTP 状态值: 200 : OK
7 // 内容类型: text/plain
8 response.writeHead(200, {'Content-Type': 'text/plain'});
9
10 // 发送响应数据 "Hello World"
11 response.end('Hello World\n');
12 }).listen(8888);//接下来我们使用 http.createServer() 方法创建服务器,并使用 listen 方法绑定 8888 端口。 函数通过 request, response 参数来接收和响应数据。
13
14 // 终端打印如下信息
15 console.log('Server running at http://127.0.0.1:8888/');

  以上代码我们完成了一个可以工作的 HTTP 服务器。

4. 使用 node 命令执行以上的代码:

  将目录指向到网站根目录下—>执行node命令运行:---->出现Server running at http://127.0.0.1:8888,证明Web服务器已经启动并成功运行了

4.4 打开浏览器,输入http://127.0.0.1:8888

四:node.js中的模块

  1 exports.printFoo=function(){return "foo"}

  1 var foo=require('./foo.js');//通过foo.js 文件路径加载foo.js模块
2 console.log(foo.printFoo());//访问foo.js模块内的printFoo函数

  1  var  http =require('http');

五:一个简单的示例应用程序

  1 var http = require('http');
2 http.createServer(function (req, res) {
3 res.writeHead(200, {'Content-Type': 'text/html'});
4 res.write('<head><meta charset="utf-8"/></head>');
5 res.end('你好\n');
6 }).listen(1337, "127.0.0.1");
7 console.log('Server running at http://127.0.0.1:1337/')

  1 var http = require('http');

  1 http.createServer(function (req, res) {
2 //回调函数中的代码略
3 })

  1  res.writeHead(200, {'Content-Type': 'text/html'});

  1   res.write('<head><meta charset="utf-8"/></head>');

  1 res.end('你好\n');

  1 http.createServer(function (req, res) {
2 //回调函数中的代码略
3 }).listen(1337, "127.0.0.1");

  1 console.log('Server running at http://127.0.0.1:1337/')

代码执行情况如下:


六:小结

NodeJs>------->>第一章:Node.js介绍的更多相关文章

  1. 第 1 章 Node.js 介绍

    本章内容包括: 什么是 Node.js 框架,为什么要用 Node.js 框架,使用 Node.js 框架能够解决什么问题,在哪些场合下应该考虑使用 Node.js 框架. 如何下载 Node.js ...

  2. node.js介绍和npm的使用

    Node.js介绍 打开Nodejs英文网:https://nodejs.org/en/ 中文网:http://nodejs.cn/ 我们会发现这样一句话: 翻译成中文如下: Node.js 是一个基 ...

  3. Node.js 介绍及安装

    Node.js是一个Javascript运行环境(runtime environment),发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装.本文详细介绍了No ...

  4. Node.js介绍、优势、用途

    一.Node.js介绍Node.js是一个javascript运行环境.它让javascript可以开发后端程序,实现几乎其他后端语言实现的所有功能,可以与PHP.Java.Python..NET.R ...

  5. [Learn Android Studio 汉化教程]第一章 : Android Studio 介绍

    注:为了看上去比较清晰这里只转载了中文 原地址:  [Learn Android Studio 汉化教程]第一章 : Android Studio 介绍 本章将引导您完成安装和设置开发环境,然后你就可 ...

  6. nodejs学习笔记Node.js 调试命令

    3.4  调试        47  下面是一个简单的例子: $ node debug debug.js < debugger listening on port 5858 connecting ...

  7. Node.js 介绍

    章节 Node.js 介绍 Node.js 入门 Node.js 模块 Node.js HTTP模块 Node.js 文件系统模块 Node.js URL模块 Node.js NPM Node.js ...

  8. 学习NodeJS第一天:node.js介绍

    Node.JS 前辈 C 程序猿 Ryan Dahl(http://four.livejournal.com/)工程,根据 Google 著名的开源 JavaScript 发动机 V8 对于二次开发 ...

  9. 【读书笔记】《深入浅出nodejs》第一章 Node简介

    1. Node的官方网站: http://nodejs.org 2. Node的缘起: Ryan Dahl 打算设计一个高性能的Web服务器. Ryan Dahl 认为设计高性能Web服务器的要点在于 ...

随机推荐

  1. NOIP 普及组 2016 海港

    传送门 https://www.cnblogs.com/violet-acmer/p/9859003.html 这次比赛,上来还是死抠第一题,用了一个半小时才 AC,还是太菜了............ ...

  2. 20190313 org.apache.commons.lang3.builder.EqualsBuilder的两种典型用法

    org.apache.commons.lang3.builder.EqualsBuilder的两种典型用法 public boolean equals(Object obj) { if (obj == ...

  3. 多目标遗传算法 ------ NSGA-II (部分源码解析)两个个体支配判断 dominance.c

    /* Domination checking routines */ # include <stdio.h> # include <stdlib.h> # include &l ...

  4. 使用ajax实现form表单的submit事件

    需求:如题,需要在登录页面使用ajax提交请求,并在本页面返回请求信息. 主要部分jS如下: //提交表单$("#loginForm").submit(function(){ va ...

  5. Idea默认的全局设置,如Maven等

    每次使用IDEA打开一个新的项目,maven都需要重新配置,非常不开心,所以需要有个默认全局配置,打破不开心 配置完就OK了 公众号 欢迎关注我的公众号“码上开发”,每天分享最新技术资讯.最优原创文章 ...

  6. ibatis (mybatis) for循环拼接语句【转】

    使用 , 拼接 查询条件dto public class queryCondition{ private String[] stuIds; private String name;} 查询sqlMap ...

  7. JavaScript数组倒序函数reverse()

    左边为原数组,右边为array.reverse()的结果: 函数很简单,但是 var temp = ChartConfig.getMonthData(); $scope.monthList = tem ...

  8. Hibernate_day03

    一.今天内容 0 列表功能实现 1 表与表之间关系回顾 (1)一对多(客户和联系人) (2)多对多(用户和角色) 2 hibernate一对多操作 (1)一对多映射配置 (2)一对多级联保存 (3)一 ...

  9. [C++]求解三元一次方程组

    /** * author:johnny zen * date:2017-09-20 11:19 * function:Calculate Ternary system of equations * n ...

  10. 让 IE9 以下的浏览器支持 Media Queries

    1. 如何让 IE9 以下的浏览器支持 css3 的media query 需要用到的 min-width/max-width 属性 css3 的媒体查询 IE 浏览器的支持程度是从 IE9开始支持, ...