一.下载安装nvm (node版本管理器),方便以后版本切换

  nvm list            -> 查看node版本(版本最好在8.0以上,不然在vsCode断点调试进不去,跟node版本有关系)

  nvm install 6.10.8   -> 安装node

  nvm use 6.4.2        ->使用的node版本号

二.开始第一个hello world程序

node filename.js 开启node服务

 ctrl + c 退出操作

/*服务模块:打开服务:流程:1.引入模块,通过变量来接收2.通过http.createServer创建服务,注意后面跟上一个匿名函数req: request 请求res: response 响应两个接口3.通过listen监听端口号和访问地址4.通过res.writeHead设置网页状态码和文档内容类型5.res.end*/
var http = require("http");//变量http得到被引入模块"http"的所有接口//创建服务器,参数是一个回调函数,
http.createServer(function(req,res){/*设置响应HTTP头部信息,第一个参数:传入网页状态码, 200表示请求正常第二个参数:设置文档内容类型,text/html 表示html文档类型,charset=UTF-8表示文档编码类型小知识:国内编码:GBK(国标k) gb2312 ...*/res.writeHead(200,{"Content-type":"text/html;charset=UTF-8"});res.end("hello world!");//如果没有res.end会存在"挂起"状态,也就是浏览器Tab选项卡的圈圈会一直转
console.log("hello console~");//会在控制台打印

}).listen(3000,"127.0.0.1");//端口号,要访问的名称(IP)

三. req.url 输出请求的头部路由信息

var http = require("http");//变量http得到被引入模块"http"的所有接口
//创建服务器,参数是一个回调函数,

http.createServer(function(req,res){res.writeHead(200,{"Content-type":"text/html;charset=UTF-8"});console.log("服务器接收到了请求地址为:" + req.url );//会在控制台打印/*** 打印结果为:* 服务器接收到了请求地址为:/      ( 浏览器访问地址为 127.0.0.1:3000 时)* 服务器接收到了请求地址为:/favicon.ico (小图标)* 服务器接收到了请求地址为:/think ( 浏览器访问地址为 127.0.0.1:3000/think 时)* 服务器接收到了请求地址为:/favicon.ico (小图标)*/res.end("hello world!");//如果没有res.end会存在"挂起"状态,也就是浏览器Tab选项卡的圈圈会一直转
}).listen(3000,"127.0.0.1");//端口号,要访问的名称(IP)

四.通过设置 req.url,访问路由

var http = require("http");//变量http得到被引入模块"http"的所有接口//创建服务器,参数是一个回调函数,
http.createServer(function(req,res){if( req.url == "/home" ){ res.writeHead(200,{"Content-type":"text/html;charset=UTF-8"});console.log("服务器接收到了请求地址为:" + req.url );//会在控制台打印/*** 打印结果为:* 服务器接收到了请求地址为:/      ( 浏览器访问地址为 127.0.0.1:3000 时)* 服务器接收到了请求地址为:/favicon.ico (小图标)* 服务器接收到了请求地址为:/think ( 浏览器访问地址为 127.0.0.1:3000/think 时)* 服务器接收到了请求地址为:/favicon.ico (小图标)*/res.end("首页");//如果没有res.end会存在"挂起"状态,也就是浏览器Tab选项卡的圈圈会一直转
    }else if(req.url == "/nav"){res.writeHead(200,{"Content-type":"text/html;charset=UTF-8"});console.log("服务器接收到了请求地址为:" + req.url );res.end("导航");}else if(req.url == "/detail"){res.writeHead(200,{"Content-type":"text/html;charset=UTF-8"});console.log("服务器接收到了请求地址为:" + req.url );res.end("详情");}else{//页面不存在改变状态码为404res.writeHead(404,{"Content-type":"text/html;charset=UTF-8"});console.log("服务器接收到了请求地址为:" + req.url );//会在控制台打印res.end("页面不存在");//如果没有res.end会存在"挂起"状态,也就是浏览器Tab选项卡的圈圈会一直转
}}).listen(3000,"127.0.0.1");//端口号,要访问的名称(IP)

五.新建html页面,fs.readFile来读取文件显示

hello.js

/*** 特别注意:写目录时一定记得在前面加上./(如果从当前开始的话)* 因为我们不知道代码将来会在什么环境下运行(常见的环境:windows、linux)*/var http = require("http");//变量http得到被引入模块"http"的所有接口
var fs = require("fs");//fs文件系统模块
//fs.readFile 异步读取一个文件的全部内容//创建服务器,参数是一个回调函数,
http.createServer(function(req,res){if( req.url == "/home" ){/***  读取文件:文件路径及名称,回调函数*  回调函数:  err:错误信息 , data:读取的数据/内存*  */fs.readFile("./home.html",function(err,data){//data读取到的文件内容res.writeHead(200,{"Content-type":"text/html;charset=UTF-8"});console.log("服务器接收到了请求地址为:" + req.url );//会在控制台打印
            res.end(data);});}else if(req.url == "/css.css"){fs.readFile("./resource/css.css",function(err,data){//data读取到的文件内容res.writeHead(200,{"Content-type":"text/css"});console.log("服务器接收到了请求地址为:" + req.url );//会在控制台打印
            res.end(data);});}else{//页面不存在改变状态码为404res.writeHead(404,{"Content-type":"text/html;charset=UTF-8"});console.log("服务器接收到了请求地址为:" + req.url );//会在控制台打印res.end("页面不存在");//如果没有res.end会存在"挂起"状态,也就是浏览器Tab选项卡的圈圈会一直转
}}).listen(3002,"127.0.0.1");//端口号,要访问的名称(IP)

home.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><link rel="stylesheet" href="css.css">
</head>
<body>Test页面~~
</body>
</html>

dos 命令窗口 运行 node hello.js

在浏览器输入127.0.0.1:3000/html就可以看见页面了

 

转载于:https://www.cnblogs.com/mmzuo-798/p/7755116.html

node学习笔记_01 环境搭建相关推荐

  1. 深度学习(二)theano学习笔记(1)环境搭建

    theano学习笔记(1)环境搭建 原文地址:http://blog.csdn.net/hjimce/article/details/46654229 作者:hjimce 搭建theano实属不易,因 ...

  2. Go学习笔记_环境搭建

    Go学习笔记_环境搭建 Go背景知识 go的特点(官网): Build fast, reliable, and efficient software at scale- Go is an open s ...

  3. Django学习笔记 开发环境搭建

    为什么使用django? 1.支持快速开发:用python开发:数据库ORM系统,并不需要我们手动地构造SQL语句,而是用python的对象访问数据库,能够提升开发效率. 2.大量内置应用:后台管理系 ...

  4. cocos2d-x lua 学习笔记(1) -- 环境搭建

    Cocos2d-x 3.0以上版本的环境搭建和之前的Cocos2d-x 2.0 版差异较大的,同时从Cocos2d-x 3.0项目打包成apk安卓应用文件,搭建安卓环境的步骤有点繁琐,但搭建一次之后, ...

  5. HarmonyOS_BearPi-HM Nano学习笔记之环境搭建

    前言:期待了已久的小熊派鸿蒙开发板终于出世了,12月11号准时抢到优惠券,果断下单,运费一起也就是29.9,实话说,很划算的,毕竟对自己的学习投资嘛,得舍得. 下面我把代码仓库.资料.视频课程地址贴出 ...

  6. 移植u-boot1.1.6到友善mini2440学习笔记之环境搭建(系列之一)

    前记:两年前就想学习ARM,由于一些原因耽搁了下来.如今迫于找硬件岗位工作的压力,不得不硬着头皮学习ARM,以前就知道ARM入门是计较困难的,如今真是体会深切啊,全是心酸泪,不仅自己的无知跟自己作对, ...

  7. Linux学习笔记1—环境搭建

    文章目录 一.Linux是什么? 二.购买云服务器搭建Linux环境 1 Xshell 1.1 Linux下简单的用户管理 1.2 Xshell的复制粘贴 2 vscode+RemoteSSH插件 3 ...

  8. wepy学习笔记之环境搭建

    写了近两年小程序了,越来越发现原生小程序有太多鸡肋的地方.所以今天准备尝试一下wepy,正好最近手上有个外包,可以拿来练手.如果可以的话,或许会出一系列wepy相关的文章(偏实战),欢迎大佬们指正. ...

  9. Python学习笔记1环境搭建+Numpy

    Python環境安裝 系統環境path裡面配置安裝路徑打開cmd輸入py查看是否安裝路徑:D:/sofeware/python3.8 配置系統環境變量(可以安裝時選擇本身就配置) [外链图片转存失败, ...

最新文章

  1. 台大喊你来上课,深度学习优化,免费的哟
  2. mysql修改编码格式6_修改编码格式MySQL
  3. 贪心 - Dota2 参议院
  4. Servlet文件上传功能的实现(commons-fileupload)
  5. Spring Cloud Hystrix的请求合并
  6. DP+BIT(优化复杂度) UESTC 1217 The Battle of Chibi
  7. linux重定向权限不够,linux – 如何使用sudo将输出重定向到一个我没有权限写入的位置?...
  8. DataTable中的数据导出Excel文件
  9. 如何修改docker swarm节点的hostname
  10. openGauss数据库备份恢复指导手册
  11. html颜色渐变配色方案,WebGradients – 提供180种渐变配色灵感的网站
  12. Matlab 实现串口助手
  13. 现在气传导耳机什么牌子最好?性价比超高的气传导耳机推荐
  14. cannot reach adb server, attempting to reconnect.
  15. android 网络运营商名称显示规则(锁屏界面,下拉列表)
  16. 大天使黎明服务器维护,金山猎豹大天使之剑全服4月17日维护公告
  17. 两个构件的重合点_两构件形成移动副,则两构件重合点的相对速度一定沿移动方向。...
  18. 邻接矩阵的理解与应用
  19. Spark的RDD的弹性体现在什么地方?------面试题
  20. B站高性能微服务架构

热门文章

  1. Java之JVM 优化经验总结
  2. linux中offsetof与container_of宏定义
  3. css3动画模块transform transition animation属性解释
  4. 【.Net Micro Framework PortingKit – 14】TinyCLR编译与测试
  5. linux Firefox汉化
  6. Struts2教程1:第一个Struts2程序
  7. zentao这php,ZenTaoPHP后面计划
  8. JavaScript 运行机制详解
  9. 转载:js拖拽文本文档并读取内容到textarea
  10. java.awt.Graphics2D绘制流程图基本元素