Day 46 (Node.js)

1.NPM版本

无须更新到最新,怕错误


2.製作专案package.json

npm init
npm init -y (全预设值)

(1)新增资料夹
(2)
http://img2.58codes.com/2024/20137684QIqWFkoHAA.png
(3)製作 package.json

只是个说明档,但专案模组被删除时
利用 >npm install 会依照package.json抓回模组
方便用~~


3.安装模组

npm install ip
npm install express

package-lock.json 可以看到装了甚么


4.安装参数简介

npm install bootstrap@4 @版本
npm uninstall bootstrap 解除安装


5.package.json run

建立 app.js、app.js、app3.js

  "scripts": {    "test": "echo \"Error: no test specified\" && exit 1",    "dev":"node app2.js",    "setup":"node app3.js"  },

只能用run

npm run dev
npm run setup

  "scripts": {     "start": "node app.js",   },

start都可以用

npm start
npm run start


6.装ip MOD 检视IP

npm install ip

    var ip = require("ip");    var result = ip.address();    console.log(result);

node app.js


7.常用套件简介

express : 建立Web服器最常见的套件
body-parser : 协助Exprs解析表单与JON资料
cors : 协助进行跨来源资源共用(COR)在HTTP回应的标区加入Access-Control-Allow-Origin声明
mysql : 连线MySQL 资料库伺服存取资料的套件
ejs : 可搭配Express,一套U画面处理引擎


8.^是甚么?,可以使用到哪个版本

  "dependencies": {    "express": "^4.17.1",    "ip": "^1.1.5"  }

版本:
1.2.3
2.1.1
Major.Function.buildNumber
新版本.新增功能.製作Number

^山、~波

较宽鬆(通常)
^1.2.3
1.5.6(v)
1.999999(v)
2.0(X)

较严谨
~1.2.3
1.2.4
1.2.5
1.2.9999
1.3(X)


9.HTTP

http://img2.58codes.com/2024/20137684kpEZ1bF0Sm.png

请求方法:
GET
POST
HEAD
PUT
DELETE
TRACE
OPTIONS
CONNECT


10.建立HTTP Server(express套件使用)

    var http = require('HTTP'); //建立http物件    var server = http.createServer(function (req, res) {    //成功 //res.write搭配writeHead档案类型    res.writeHead(200, ('Content-Type': 'text/html'J);    res.write('Node.js');    res.end('Hello World');    });    server.listen(80);

11.nodemon 即时更新看code

http://img2.58codes.com/2024/2013768401Tr03WNr5.png
1.选CND(重要***************在上方选)

npm install nodemon -g (-g全域安装)

C:\XXX\Node.js\Lab0809npm>npm install nademon -g

nodemon app.js


12.抓路径

    //使用express套件    var express = require("express");    var app = express();    app.listen(3000);    //1.使用3000    app.get("/", function (req, res) {        res.send("OK, Home page....");    })

中介程式辅助:express.static

    // Pipeline, step 1    var aMiddleWare = express.static("./public");    app.use(   aMiddleWare   )

使用中介

    // Pipeline, step 2    app.use("/member", member);

路由:Router

    var member = express.Router();    member.get("/new", function (req, res) {        res.send("Member New...")    })    member.get("/login", function (req, res) {        res.send("Member Login")    })

port号3000/中介使用/路由器
http://localhost:3000/member/new
http://localhost:3000/member/login

http://img2.58codes.com/2024/20137684ZRH8DHJ6Yu.png
http://img2.58codes.com/2024/201376849HkV2LhRvc.png


13.去大型化(页面程式码减少、收纳路由器)

主程式、中介index.js:static require

    var express = require("express");    var app = express();    app.listen(3000);    // Pipeline, step 1    var aMiddleWare = express.static("./public");    app.use(   aMiddleWare   )    // Pipeline, step 2    var member = require("./member.js");    app.use("/member", member);    // http://localhost:3000/member/new    // http://localhost:3000/member/login

副程式member.js: Router

    var express = require("express");    var member = express.Router();    member.get("/new", function (req, res) {        res.send("Member New... V2")    })    member.get("/login", function (req, res) {        res.send("Member Login V2")    })    module.exports = member;

14. use v.s get

1.get 直接指定  (特定路径) (较小) => 简单路由2.use 可以广泛运用 (较大,抓中介:static、Router) =>模组化路由
    var r = express.Router()    r.get('/login',function(req,res){})    r.get('/new',function(req,res){})    app.use('/member',r)

exit 关闭终端机
ctrl+C 关闭使用套件 or 重新输入指令

常备药
npm init -y
npm install express
nodemon index.js

var express = require("express");
var app = express();
app.listen(3000);


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章