NodeJs入門(二)--用nodejs搭建一個簡單的web服務器

前言


對于初入node的小白,可能除了知道node是運行在服務端的js外,其他還是一頭霧水;
那么本節內容將通過 搭建一個簡單的web服務器的方式,讓讀者對node有個大致宏觀的了解,話不多說,讓我們開始吧!

搭建一個簡單的web服務器的步驟


1.生成如下目錄

nodeLearn(文件夾)

begining(文件夾)

sever.js

2.打開 官網,復制官網-創建web服務器的示例代碼到 sever.js 保存

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

3.運行 server.js

打開[begining]文件夾

$ cd nodeLearn/begining

運行 node.js

$ node server.js

可以看到命令行有日志打印出來了,如下

Server running at http://127.0.0.1:3000/

4.查看搭建好的web服務器

在瀏覽器輸入 127.0.0.1:3000,刷新頁面
頁面有sever.js打印的hello word
一個簡單的有請求有返回的五臟俱全的web服務器搭建成功

關于示例的分析與總結


1. 關于【創建web服務器】示例代碼的分析

/*
* 加載【http】模塊,該模塊由javascript來編寫
* 職責是創建 web 服務器 及 處理http相關的任務等
*/
const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

// 通過 createServer 創建 web服務器
const server = http.createServer((req, res) => {
  //req 請求體:獲取請求相關的信息(請求來自哪里、是get還是post)
  //res 響應體:告訴服務器給請求響應什么內容

  // 設置響應的請求頭狀態碼是200
  res.statusCode = 200;
  // 設置返回的文本類型:純文本
  res.setHeader('Content-Type', 'text/plain');
  // 最后給客戶端返回 hello world
  res.end('Hello World!\n');
});
// 通過 listen 監聽端口 的請求
server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

2.node中體驗js環境

2.1 nodejs本質上javascript的執行環境
  • 在瀏覽器中體驗js環境:

打開控制臺,切換到 console 的窗口,可以執行js邏輯,回車可得到結果

var a=1;var b=2; function add(a,b){return a+b;} add(a,b);
  • 在node中體驗js環境:

退出sever.js程序運行 Ctrl+C
進入node環境
node
輸入js邏輯,回車可得到結果

var a=1;var b=2; function add(a,b){return a+b;} add(a,b);
2.2 兩者不同之處
  • 他們所在的環境頂層,宿主所在的全局變量不太一樣,如:

    瀏覽器里輸入window,會出現window 的掛載屬性等等;命令行輸入window會報錯
    node環境里輸入process,會出現process的掛載屬性等等;瀏覽器輸入process會報錯( [process]:nodeJs的一個模塊,在此不做詳細了解)

目錄

NodeJs入門(一)--Node安裝、版本管理
NodeJs入門(二)--用nodejs搭建一個簡單的web服務器

nodeJS【入門】系列 會持續更新,后續將 推出【進階】及【實戰】系列,敬請期待......

您的筆芯,將是我力量的源泉!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Node.js是目前非常火熱的技術,但是它的誕生經歷卻很奇特。 眾所周知,在Netscape設計出JavaScri...
    w_zhuan閱讀 3,639評論 2 41
  • ## 前端開發的工具 ### 編輯器: 1. 輕量級的,依靠插件:sublime;atom(github);vs ...
    浪流兒閱讀 3,225評論 0 2
  • Mockito介紹與入門 mockito官網 5分鐘mockito入門 Mockito: 一個強大的用于Java開...
    我的小魚干去哪兒了閱讀 1,583評論 0 2
  • 五.二 祝全文 今天,我倆姐姐帶著孩子回娘家看望母親。在家里,我們和母親有說有笑,無話不談,母親更...
    誠信裝飾祝希信閱讀 166評論 0 0
  • 這種身體如果不用中醫方法調,預后非常危險的。癌癥高發人群【問診單】 1.姓名,張憲敏,性別,女年齡:43 2.身高...
    菡丹閱讀 848評論 0 2