完整的node腳手架搭建服務


  使用腳手架來搭建node服務,使用到了express架構,不熟悉的可以看下express官方文檔;http://www.expressjs.com.cn/

  • 使用express直接生成服務的文檔結構目錄
  • express app

  • 在bin/www文件為項目啟動的文件,我們運行node服務,直接npm start運行
  • 在node_modules里為我們項目所需要的第三方包
  • 在public文件中的是我們的靜態資源,如圖片,我們讀取,寫入的文件等
  • 在routes文件則是我們所寫的所有接口文件,建議每個模塊的功能寫在一個文件,便於之后管理
  • 在view文件中則是我們的前端頁面,這里是沒有前后分離的,我們真正寫項目可以不管,里面默認的語法是jade,但是可以設置成ejs的模板語法來寫前端!現在都是前后端分離項目,這個文件基本沒啥作用了
  • app.js則是我們的集合的文件,我們的所有接口的引入,express服務的開啟都在此文件進行,有點類似vue項目的main.js文件
  • 剩下的就是package..json是我們下載的包的管理
  •   

 

  • 在routes文件中寫我們的接口文件
  • var express = require('express');
    var router = express.Router();
    var mysql = require('mysql'); //引用數據庫
    var connection = mysql.createConnection({
        host: 'localhost',
        user: 'root',
        password: '',
        database: 'node_test',
    });
    router.get('/getweblist', function (req, res) {
        var sql = "select * from webList"
        connection.query(sql, function (error, result, fields) {
            res.send(result)
        })
    });
    module.exports = router //將接口暴露出去,以便在app.js掛在app服務上,也可以每個接口寫成函數的方式暴露出去,運用對象的方式在app.use('/',router.function)調用運行,第一個參數為掛載的路徑,第二個為函數

     

  • 在app.js引入我們寫的路由接口
  • var weblist = require('./routes/weblist'); //根據接口所在文件引入
    app.use('/list',weblist) //將我們weblist里面的接口掛載在‘/list上面’,當我們訪問的接口名前綴為‘/list’時會自動匹配里面的接口

     

  • 記住這里有一個我寫是想了很久的坑,app.use()方法調用時,里面的參數在我們請求接口時,需要把參數帶上,例如請求上面的接口,此時我的前端路徑應為‘http://localhost:3000/list/getweblist’,這樣才能請求到我們的接口,不然會走404;之前我看很多文檔都寫的參數和接口有一致,所以理解為根據參數的路徑去匹配文件里面的接口,后來發現根本沒用,參數的名字是我們任意取得。
  • 對應接口所需的一些包我們也都需要進行安裝和引入使用,大部分都是在app.js引入使用即可,當然對於重復的代碼,例如數據庫的連接等,我們可以做成單獨的文件引入

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM