在此之前,确保你已经安装了Node(并且你很会折腾) - 有人说,Java脚本和Java最本质的区别就是一个超会更新,一个死守旧。

如果你没有安装,请去官网下载并且安装:http://nodejs.cn/download/

中文文档:http://nodejs.cn/api/

先来说说node的优点以及缺点

粗略的来说node的优点即在于它是单线程、运行环境要求低,缺点同样明显的就是它一旦出现问题,全部瘫痪。

而php和java是多线程运行的,互不影响,但占资源高。

看一个小例子(菜鸟教程里面的)

 1 var http = require('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);
13
14 // 终端打印如下信息
15 console.log('Server running at http://127.0.0.1:8888/');

 1 // 请求http包
 2 var http = require('http');
 3
 4 // 创建一个http线程
 5 http.createServer(function(request, response) {
 6
 7     // 发送 HTTP 头部
 8     // HTTP 状态值: 200 : OK
 9     // 内容类型: text/plain
10     response.writeHead(200, { 'Content-Type': 'text/plain' });
11
12     // 发送响应数据 "Hello World"
13     response.end('Hello World\n');
14 }).listen(8888);
15
16 // 终端打印如下信息
17 console.log('Server running at http://127.0.0.1:8888/');

很好,可以运行

默认本地:127.0.0.1

端口自设:8088

我们看看官网API(http自带server)

且每一段代码都会带上res.end() , 这是因为我们要告诉服务器已经完成了.

再来看看这一段代码

 1 var http = require('http');
 2 var fs = require('fs');
 3
 4 var server = http.createServer(function(req, res) {
 5
 6     // 请求路由 ==是指字符串比较
 7     if (req.url == "/index") {
 8         fs.readFile('index.html', function(err, data) {
 9             res.writeHead(200, { "Content-type": "text/html;charset=utf-8" });
10             res.end(data);
11         });
12     } else {
13         fs.readFile('404.html', function(err, data) {
14             res.writeHead(200, { "Content-type": "text/html;charset=utf-8" });
15             res.end(data);
16         });
17     }
18 });
19
20 server.listen(80, '127.0.0.1');

 1 // 导入http
 2 var http = require('http');
 3 // 导入fs(文件读取服务)
 4 var fs = require('fs');
 5
 6 var server = http.createServer(function(req, res) {
 7     // 其实nodejs最难的一点就是管理路由 - 它和其它web服务器不一样(因此灵活性超强)
 8
 9     // 请求路由 ==是指字符串比较
10     if (req.url == "/index") {
11         // 请求地址index,读取文件index.html
12         fs.readFile('index.html', function(err, data) {
13             res.writeHead(200, { "Content-type": "text/html;charset=utf-8" });
14             res.end(data);
15         });
16     } else {
17         // 请求地址不存在,读取文件404.html,并且返回
18         fs.readFile('404.html', function(err, data) {
19             // 请求头 - 根据类型不同而不同
20             res.writeHead(200, { "Content-type": "text/html;charset=utf-8" });
21             res.end(data);
22         });
23     }
24 });
25
26 // 监听80端口,并且是本地地址
27 server.listen(80, '127.0.0.1');

通过 localhost/index 就可以访问到

index.html了。

通过localhost/other 就可以访问到

其它页面了。

你试一试链接本地图片或者css以及其它资源,感受一下node路由的强大!

转载于:https://www.cnblogs.com/cisum/p/9270580.html

nodejs - 创建服务器(1)相关推荐

  1. 在使用angular2中使用nodejs创建服务器,并成功获取参数

    为什么80%的码农都做不了架构师?>>>    老是遇到很多坑等着自己去填. 首先创建服务器: 1.最好使用express,这个库有更多的api,方法:npm install exp ...

  2. nodejs 创建一个静态资源服务器 +路由

    0.补充 1.Node.js 创建的第一个应用 1.引入 http 模块 var http = require("http"); 2.创建服务器 接下来我们使用 http.crea ...

  3. nodejs创建http服务器

    之前有简单介绍nodejs的一篇文章(http://www.cnblogs.com/fangsmile/p/6226044.html) HTTP服务器 Node内建有一个模块,利用它可以很容易创建基本 ...

  4. 使用Nodejs创建一个Web服务器应如何操作?以及路由相关知识了解

    文章目录 Nodejs创建一个Web服务器 Node.js创建第一个应用 Web服务器介绍 Nodejs创建一个Web服务器 路由 EJS模块引擎 Get.Post 获取GET传值 获取POST传值 ...

  5. nodejs框架express之创建服务器(初学)

    nodejs框架express之创建服务器(初学) //引入express框架 const express = require('express'); //创建网站服务器 const app = ex ...

  6. Nodejs创建https服务器(Windows 7)

    为了实验一下WebRTC,搭了个简单的https服务器.说说步骤: 生成OpenSSL证书 使用Nodejs的https模块建立服务器 OpenSSL 证书 我机子Windows 7,安装了Cygwi ...

  7. node.js 创建服务器_Node.js HTTP软件包–创建HTTP服务器

    node.js 创建服务器 An HTTP server caters to client requests and sends appropriate response. For example, ...

  8. Node.js(黑马)笔记01--day1--最简单的node执行脚本,readFile,创建服务器,核心模块,IP地址和端口号,编码格式g、get,post,路由,静态资源

    0.webstom2020解决node代码不自动提示及显示警告的bug 完美解决Webstorm不支持nodejs等语法提示和补全 https://blog.csdn.net/Dobility/art ...

  9. SQL Server 审核(Audit)-- 创建服务器级别的审核

    任务1:创建审核 步骤1:打开SSMS,登录到指定的实例,展开"Security","Audits"节点. 步骤2:在"Audits"节点上 ...

最新文章

  1. idea 端口被占用
  2. php导出excel表格需要隐藏行,php - 隐藏或删除列时PHPExcel导出图像问题 - 堆栈内存溢出...
  3. 使用sklearn来处理类别数据
  4. 高仿带感魔性病毒源码+成品(最近很火的)
  5. 第十期:过去50年间,十大热门语言及发明者大盘点
  6. 你们的一起努力,才有了现在的盛世华夏
  7. html中表单的校验的插件,功能强大的jquery.validate表单验证插件
  8. git rebase 两个交叉branch换基
  9. 比特币技术公司创始人:ICO是一场被骗子玩弄的网络泡沫
  10. Redis常用API-使用文档
  11. python打开一个本地目录文件路径
  12. javaweb增删改查实例_JavaWeb图像可视化管理系统之后台搭建(二)用户管理与增删改查(内含代码)...
  13. OC @class关键字
  14. 详解基于机器学习的恶意代码检测技术
  15. 第十三首歌曲《翱翔的骄鹰》
  16. Linux和windows导入scv数据文件
  17. linux 使用sock编程实例
  18. 王垠:完全用Linux工作
  19. 工业机器人(四)——传感元件制作
  20. xp升级到win7傻瓜教程_重装系统软件哪些比较好_windows7教程

热门文章

  1. 图示评审技术_编制清单报价最需要施工技术课程中的哪些知识?
  2. python 在主线程开线程_Python开启线程,在函数中开线程的实例
  3. java静态方法加载顺序_java中类以及方法的加载顺序
  4. org.apache.struts2.json.JSONException: org.hibernate.LazyInitializationException: failed to lazily i
  5. 企业网络推广专员浅析如何完善网站维护企业网络推广吸引用户浏览
  6. 如何规划网站设计方案让用户访问更加舒适?
  7. php指定时间显示内容,织梦用php判断某个时间段显示和隐藏内容
  8. php生成图片表格自动换行_实用的财务做账表格,点击即可一键生成报表,并自动结转...
  9. kaggle信用卡欺诈看异常检测算法——无监督的方法包括: 基于统计的技术,如BACON *离群检测 多变量异常值检测 基于聚类的技术;监督方法: 神经网络 SVM 逻辑回归...
  10. 针对深度学习(神经网络)的AI框架调研