極簡 Node.js web服務器案例

前提

  • node環境

說明

極簡嘛,所以,此案例直接通過shell窗口操作。當然啦,你也可以使用VSCode或者其他IDE工具。

正文

  1. 新建一個空目錄。本示例新建個名爲 node-server-demo 目錄。

  2. 進入到該目錄,打開一個shell終端。(window系統:進入目錄,按住shift鍵,右鍵,在此處打開Powershell窗口)
    在這裏插入圖片描述

  3. 在終端執行 npm init -y,初始化node項目。會在目錄生成一個package.json文件。(參數 -y 的作用是令所有配置默認。也可以不指定,自己手動填寫配置)
    在這裏插入圖片描述

  4. 在終端執行 npm install express,安裝express依賴。
    在這裏插入圖片描述

  5. 在項目根目錄新建 server.js 文件,編寫web服務器配置。

var express = require('express');
var app = express();

app.use(express.json()) // 增加 application/json 請求類型的支持
app.use(express.urlencoded({ extended: true })) // 增加 application/x-www-form-urlencoded 請求類型的支持

// queryString參數
app.get('/getUrl', function (req, res) {
  console.log(req.query);
  res.end(JSON.stringify(req.query));
})
// restful參數
app.get('/getUrl/:name', function (req, res) {
  console.log(req.params.name);
  res.send(req.params.name);
})
// 請求體參數,上述兩行app.use就是爲了支持請求體參數
app.post('/postUrl', function (req, res) {
  console.log(req.body);
  res.json({"msg": req.body});
})

//監聽端口
var server = app.listen(8088, function () {
  var host = server.address().address
  var port = server.address().port
  console.log("webserver已啓動,地址 http://%s:%s", host, port)
});
  1. 在終端執行 node server.js,啓動web服務器。
    正常輸出 “webserver已啓動,地址 http://:::8088”,說明web服務器正在運行中。
    在這裏插入圖片描述

  2. 測試接口

  • GET請求:可直接用瀏覽器訪問,也可以使用Postman發送GET請求。
    • queryString傳參:localhost:8088/getUrl?name=markix
    • restful傳參:localhost:8088/getUrl/markix
  • POST請求:通過Postman測試
    在這裏插入圖片描述

由於在Web服務器配置中寫了一些console.log,所以接收到請求則會打印出來。
通過接口響應內容,或者服務器的日誌判斷接口是否正常。

  1. 極簡 Node.js web服務器。完工。

說明

服務器返回響應相關文檔

  • res.end(); //建議無需數據返回時使用
  • res.send(); //可靈活配置返回內容
  • res.json(); //返回json類型內容

服務器req的屬性相關文檔

  • req.query //queryString參數
  • req.params //restful參數
  • req.body //請求體,該功能能正常使用的關鍵是代碼中兩行app.use

開啓更多姿勢,詳見Express官網


end

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章