一. 搭建Web服務
步驟:
1.加載http模塊
2.創建http服務
3.服務端對象監聽request請求,用於監聽客戶端的請求
4.啓動http服務,監聽端口
參考代碼:
//1.引入node內置模塊http
var http=require('http');
//2.創建http服務
var server=http.createServer((request,response)=>{
//request 請求對象 response 響應對象
//3.設置狀態碼和響應頭
response.writeHead(200,{
//注意,這裏第二個參數是對象
"Content-Type":"text/html;charset=utf-8"
});
//設置http頭部,文件類型是html,字符集是utf8(可代替第3步)
//response.setHeader("Content-type","text/html;charset=utf-8");
//4.響應數據
response.write("hello world");
//5.結束響應(必須要借宿響應,否則瀏覽器會被掛起)
response.end();
});
//6.監聽端口,啓動服務
server.listen(3000,function(){
console.log("服務啓動成功");
});
然後在終端上,切換到當前js文件所在的文件夾,進入node交互式環境.使用node 文件.js命令,運行這個js,啓動服務,此時,可以在瀏覽器中 http://localhost:3000 或者http:127.0.0.1:3000進行訪問了,注意,輸出的console.log(),不會在瀏覽器console上顯示,而是在終端顯示
注意:
1.在監聽request事件中,最後一定要response.end()結束響應.
2.瀏覽器顯示中文可能是亂碼,需要設置響應頭告訴瀏覽器顯示時所用的編碼,要在response.end()之前設置
response.setHeader(“Content-type”,“type/plain;charset=utf-8”);//響應爲純文本
response.setHeader(“Content-type”,“type/html;charset=urf-8”);//響應爲html文本
Content-Type:用於定義用戶的瀏覽器如何處理將要加載的數據
text/html 將文件設置爲html形式,瀏覽器在獲取到這種文件時會自動調用html的解析器
text/plain 將文件設置爲純文本形式,瀏覽器在獲取到這種文件是並不會進行其他處理
另外,我們在運行上述代碼時,如果我們在代碼中稍微加了點內容,必須要按兩次ctrl+c 纔可退出node交互式環境,停止服務,然後重新啓動,纔可以把剛纔修改的內容生效.那每次都要這種操作,不覺得麻煩嗎,這個時候,我們引入一個全局的工具模塊 nodemon
1.安裝全局的工具模塊 nodemon
npm installl nodemon -g
2.啓動node服務時,使用nodemon命令替代node命令
注意,nodemon只是在運行服務端代碼的時候去使用,其餘普通一個nodejs代碼運行,使用node命令就好了.
端口號知識:
1.取值範圍 0-65535
2.公認端口(默認端口)
0-1023 一般都已經使用了
比如:
http 80
https 443
ftp 21
ssh 22
mysql 3306
我們在使用中,一定要避免端口被佔用的情況,在我們使用nodeJs端口被佔用了,會有很友好的提示,端口被佔用了,但是很多其他的軟件,端口被佔用,沒有提示,很多意想不到的錯誤就出現了