• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    nodejs教程安裝express及配置app.js文件的詳細步驟_json

    來源:懂視網 責編:小采 時間:2020-11-27 21:09:23
    文檔

    nodejs教程安裝express及配置app.js文件的詳細步驟_json

    nodejs教程安裝express及配置app.js文件的詳細步驟_json:安裝express.js 如果你安裝了npm,安裝變得很簡單,只需要在終端中運行下面的代碼即可: 代碼如下:npm install express -gd -g代表安裝到NODE_PATH的lib里面,而-d代表把相依性套件也一起安裝。如果沒有-g的話會安裝目前所在的目錄(會建立一個node_m
    推薦度:
    導讀nodejs教程安裝express及配置app.js文件的詳細步驟_json:安裝express.js 如果你安裝了npm,安裝變得很簡單,只需要在終端中運行下面的代碼即可: 代碼如下:npm install express -gd -g代表安裝到NODE_PATH的lib里面,而-d代表把相依性套件也一起安裝。如果沒有-g的話會安裝目前所在的目錄(會建立一個node_m

    安裝express.js

    如果你安裝了npm,安裝變得很簡單,只需要在終端中運行下面的代碼即可:
    代碼如下:
    npm install express -gd

    -g代表安裝到NODE_PATH的lib里面,而-d代表把相依性套件也一起安裝。如果沒有-g的話會安裝目前所在的目錄(會建立一個node_modules的文件夾),你可以透過以下指令來比較兩者的不同:

    代碼如下:
    npm list -g
    npm list

    如果沒有npm,那么我可以使用github來git下來最新的express。
    好了,現在你可以通過express testapp來建立express實例。以下是示例:

    代碼如下:
    cd ~
    express testapp
    cd testapp
    node app.js

    這樣就建立了一個testapp的nodejs應用,而app.js是默認的應用主js。下面來詳細的說說app.js中的各項配置。

    引入模塊
    代碼如下:
    var express = require('express');
    var app = module.exports = express.createServer();

    require()是node.js提供的函數,可以讓你引入其他模塊以調用模塊的函數和變量,默認下node.js會在$NODE_PATH和目前js所在目錄下的node_modules文件夾下去尋找模塊。require也可以用來載入自己寫的模塊哦~這樣涉及到node.js的模塊機制,后面有機會就在介紹。

    第二行的express.createServer()就是在建立server,而中間的module.exports也是涉及到node.js的模塊機制,以后再說。

    express的app.js的詳細配置說明

    express.js繼承自connect模塊,所以如果你的node_modules文件夾下沒有connect模塊也是不行的。

    設置views路徑和模板
    我們再來看下面兩行:
    代碼如下:
    app.set('views', __dirname + '/views');
    app.set('view engine', 'jade');

    上面兩行是設置views文件夾,即模板文件夾,__dirname是node.js里面的全局變量,即取得執行的js所在的路徑,另外__filename是目前執行的js文件名。所以,app.set(‘views', __dirname + ‘/views');是設置views的文件夾。

    而app.set('view engine', 'jade');是設置express.js所使用的render engine。除了Jade之外,express.js還支持EJS(embedded javascript)、Haml、CoffeScript和jQuery template等js模板。

    app.use配置

    代碼如下:
    app.use(express.bodyParser());
    app.use(express.methodOverride());
    app.use(app.router);
    app.use(express.static(__dirname + '/public'));

    express.bodyParser()是Connect內建的middleware,設置此處可以將client提交過來的post請求放入request.body中。
    express.methodOverride()也是Connect內建的,可以協助處理POST請求偽裝PUT、DELETE和其他HTTP methods。
    app.router()是route requests,但express.js的官方文件是這句可有可無,并且經過測試還真的是這樣,不過還是寫上吧。
    express.static()也是一個Connect內建的middleware來處理靜態的requests,例如css、js、img文件等。所以static()里面指定的文件夾中的文件會直接作為靜態資源吐出來。

    app.configure設置

    代碼如下:
    app.configure('development', function(){
    app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
    });
    app.configure('production', function(){
    app.use(express.errorHandler());
    });

    express.errorHandler()是Connect內建的middleware來協助處理例外。這裡也揭露了app.configure()的令一個用法,第一個參數是node.js的環境設定,如此我們就可以設定在不同的執行環境使用不同程度的dump。PS:node.js是透過NODE_ENV這個環境變數來取得環境設定,e.g.:在命令列,NODE_ENV=production node app.js就可以進入production環境。

    路由和request的處理

    ok,下面是nodejs處理request的內容:

    代碼如下:
    app.get('/', function(req, res){
    res.render('index', {
    title: 'Express'
    });
    });

    上面的代碼意思是,get請求根目錄則調用views文件夾中的index模板,并且傳入參數title為“Express”,這個title就可以在模板文件中直接使用。

    在express中要處理post請求,需要使用app.post()。如下面的代碼:

    代碼如下:
    app.post('/add', function(req,res){
    res.render('add', {
    sum: req.body.a + req.body.b
    });
    });

    前面我們提到了req.body是express.bodyParser()把POST參數處理后的結果。

    另外除了get和post方法,還有app.all()意思就是所有的請求處理。

    添加listen,啟動nodejs服務器

    代碼如下:
    app.listen(3000);
    console.log(
    "Express server listening on port %d in %s mode",
    app.address().port,
    app.settings.env);

    到目前為止,我們就基本全明白了express配置了,也就不會像以前那樣跟別人都寫個hello world卻不知道各行代碼的含義了。

    轉自 JS8.IN ™

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    nodejs教程安裝express及配置app.js文件的詳細步驟_json

    nodejs教程安裝express及配置app.js文件的詳細步驟_json:安裝express.js 如果你安裝了npm,安裝變得很簡單,只需要在終端中運行下面的代碼即可: 代碼如下:npm install express -gd -g代表安裝到NODE_PATH的lib里面,而-d代表把相依性套件也一起安裝。如果沒有-g的話會安裝目前所在的目錄(會建立一個node_m
    推薦度:
    標簽: app 文件夾 步驟
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 日韩精品视频在线观看免费| 乱精品一区字幕二区| 亚洲国产精品尤物YW在线观看| 国产成人精品免费视频大全麻豆| 在线精品自拍无码| 欧美成人精品第一区二区| 国产精品美女久久久免费| 久久成人国产精品二三区| 精品人妻中文av一区二区三区| 亚洲精品老司机在线观看| 久久精品亚洲福利| 国产精品无码v在线观看| 精品午夜久久福利大片| 精品深夜AV无码一区二区| 亚洲精品无码久久久影院相关影片| 久久国产精品视频| 精品99久久aaa一级毛片| 国产精品无码素人福利不卡| 四虎成人精品免费影院| 欧美精品一区二区三区在线| 国产午夜精品视频| 精品一区二区久久| 国产精品久久影院| 99久久精品费精品国产一区二区| 国产香蕉国产精品偷在线| 亚洲精品在线观看视频| 国产成人精品日本亚洲专| 99久久免费国产精精品| 国产精品白浆在线观看免费| 精品国产三级a∨在线| 精品人妻人人做人人爽| 精品无码av一区二区三区| 精品无码人妻一区二区三区| 久久精品国产网红主播| 国产AV无码专区亚洲精品| 91精品啪在线观看国产| 国产精品久久久久影院嫩草| 欧美精品黑人巨大在线播放| 98精品国产自产在线XXXX| 国产精品极品| 另类国产精品一区二区|