国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Node.js學(xué)習(xí)之路27——Express的router對(duì)象

NicolasHe / 825人閱讀

摘要:對(duì)象大小寫(xiě)敏感默認(rèn)不敏感保留父路由器的必需參數(shù)值如果父項(xiàng)和子項(xiàng)具有沖突的參數(shù)名稱則該子項(xiàng)的值將優(yōu)先激活嚴(yán)格路由默認(rèn)禁用禁用之后正常訪問(wèn)但是不可以訪問(wèn)全部調(diào)用或者或者實(shí)際上就是的各種請(qǐng)求方法使用路由使用模塊方法

Router([options])
let router = express.Router([options]);

options對(duì)象

caseSensitive,大小寫(xiě)敏感,默認(rèn)不敏感

mergeParams,保留父路由器的必需參數(shù)值,如果父項(xiàng)和子項(xiàng)具有沖突的參數(shù)名稱,則該子項(xiàng)的值將優(yōu)先

strict,激活嚴(yán)格路由,默認(rèn)禁用,禁用之后/uu正常訪問(wèn),但是/uu/不可以訪問(wèn)

1. router.all

全部調(diào)用

router.all(path, [callback, ...] callback)

router.all("*", fn1, fn2...);
// 或者
router.all("*", fn1);
router.all("*", fn2);
// 或者
router.all("/user", fn3);
2. router.METHOD

router.METHOD(path, [callback, ...] callback)

實(shí)際上就是ajax的各種請(qǐng)求方法

router.get("/", (req, res, next) => {
    
})

router.post("/", (req, res, next) => {
    
})
3. router.route(path)
var router = express.Router();

router.param("user_id", function(req, res, next, id) {
  // sample user, would actually fetch from DB, etc...
  req.user = {
    id: id,
    name: "TJ"
  };
  next();
});

router.route("/users/:user_id")
.all(function(req, res, next) {
  // runs for all HTTP verbs first
  // think of it as route specific middleware!
  next();
})
.get(function(req, res, next) {
  res.json(req.user);
})
.put(function(req, res, next) {
  // just an example of maybe updating the user
  req.user.name = req.params.name;
  // save user ... etc
  res.json(req.user);
})
.post(function(req, res, next) {
  next(new Error("not implemented"));
})
.delete(function(req, res, next) {
  next(new Error("not implemented"));
})
4. router.use 4.1 使用路由
var express = require("express");
var app = express();
var router = express.Router();

// simple logger for this router"s requests
// all requests to this router will first hit this middleware
router.use(function(req, res, next) {
  console.log("%s %s %s", req.method, req.url, req.path);
  next();
});

// this will only be invoked if the path starts with /bar from the mount point
router.use("/bar", function(req, res, next) {
  // ... maybe some additional /bar logging ...
  next();
});

// always invoked
router.use(function(req, res, next) {
  res.send("Hello World");
});

app.use("/foo", router);

app.listen(3000);
4.2 使用模塊方法
var logger = require("morgan");

router.use(logger());
router.use(express.static(__dirname + "/public"));
router.use(function(req, res){
  res.send("Hello");
});

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/93072.html

相關(guān)文章

  • Node.js學(xué)習(xí)之路23——Node.js利用mongoose連接mongodb數(shù)據(jù)庫(kù)

    摘要:類比一下你有一個(gè)巨型停車場(chǎng),里邊分了不同的停車區(qū)集合,這里的,每個(gè)停車區(qū)可以停很多車下文提到的,相當(dāng)于每個(gè)數(shù)據(jù)集合里邊可以有很多張數(shù)據(jù)表。 Node.js利用mongoose連接mongodb數(shù)據(jù)庫(kù) Node.js連接mongodb數(shù)據(jù)庫(kù)有很多種方法,通過(guò)mongoose模塊引入是其中的一個(gè)方法 代碼組織結(jié)構(gòu) |---|根目錄 |---|---|connect.js(mongoose測(cè)...

    ssshooter 評(píng)論0 收藏0
  • Node.js學(xué)習(xí)之路23——Node.js利用mongoose連接mongodb數(shù)據(jù)庫(kù)

    摘要:類比一下你有一個(gè)巨型停車場(chǎng),里邊分了不同的停車區(qū)集合,這里的,每個(gè)停車區(qū)可以停很多車下文提到的,相當(dāng)于每個(gè)數(shù)據(jù)集合里邊可以有很多張數(shù)據(jù)表。 Node.js利用mongoose連接mongodb數(shù)據(jù)庫(kù) Node.js連接mongodb數(shù)據(jù)庫(kù)有很多種方法,通過(guò)mongoose模塊引入是其中的一個(gè)方法 代碼組織結(jié)構(gòu) |---|根目錄 |---|---|connect.js(mongoose測(cè)...

    jsummer 評(píng)論0 收藏0
  • Node.js學(xué)習(xí)之路25——Expressrequest對(duì)象

    摘要:對(duì)象表示請(qǐng)求并且具有請(qǐng)求查詢字符串參數(shù)正文標(biāo)題頭等屬性對(duì)應(yīng)用程序?qū)嵗囊帽4媪撕芏鄬?duì)使用中間件的應(yīng)用程序?qū)嵗囊脪燧d在路由實(shí)例上的路徑請(qǐng)求主體和和包含在請(qǐng)求正文中提交的數(shù)據(jù)的鍵值對(duì)默認(rèn)情況下它是未定義的當(dāng)您使用體解析中間件如和時(shí)將被填 2. request req對(duì)象表示http請(qǐng)求,并且具有請(qǐng)求查詢字符串,參數(shù),正文,http標(biāo)題頭等屬性 app.get(/user/:id, ...

    cocopeak 評(píng)論0 收藏0
  • Node.js學(xué)習(xí)之路26——Expressresponse對(duì)象

    摘要:如果包含字符則將設(shè)置為。添加字段到不同的響應(yīng)頭將該字段添加到不同的響應(yīng)標(biāo)頭如果它尚未存在。 3. response對(duì)象 3.1 是否發(fā)送了響應(yīng)頭 res.headersSent布爾屬性,app是否發(fā)送了httpheaders const express = require(express); const bodyParser = require(body-parser); cons...

    davidac 評(píng)論0 收藏0
  • 60分鐘學(xué)會(huì)使用Node.js+Express+Ejs+mongoDB

    摘要:安裝完畢后,打開(kāi)終端,在終端分別輸入如下命令,檢測(cè)是否安裝成功。號(hào)會(huì)告訴安裝最新版本。它會(huì)為每一條記錄創(chuàng)建一個(gè)唯一的值。注意我們不需要提前創(chuàng)建這個(gè),它會(huì)在第一次使用的時(shí)候自動(dòng)創(chuàng)建。我們可以使用,這是我最常用的方式。 60分鐘學(xué)會(huì)使用Node.js+Express+Ejs+mongoDB 本文出自從零到壹全棧部落 (Node+Vue+微信公眾號(hào)開(kāi)發(fā))企業(yè)級(jí)產(chǎn)品全棧開(kāi)發(fā)速成周末班首期班(1...

    BicycleWarrior 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<