前言
對于初入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【入門】系列 會持續更新,后續將 推出【進階】及【實戰】系列,敬請期待......
您的筆芯,將是我力量的源泉!