nodejs原生服務搭建
-
node安裝
- 因爲node安裝這一步比較簡單,百度一下nodejs,然後到官網上下載一個即可
- 下載下來之後,一路默認安裝
- 打開電腦命令行窗口 輸入node -v
- 因爲node安裝這一步比較簡單,百度一下nodejs,然後到官網上下載一個即可
-
初始化package.json文件
- 在命令行中執行npm init -y 會自動在當前項目項目下生成package.json文件
- 新建項目myProject,然後進入到該文件夾,在地址欄中輸入cmd並回車會自動在當前目錄下打開cmd命令窗口
- 在命令窗口中輸入 npm init -y 就會生成package.json文件
- 新建項目myProject,然後進入到該文件夾,在地址欄中輸入cmd並回車會自動在當前目錄下打開cmd命令窗口
- package.json爲項目包管理文件,主要作用如下
- 可以配置命令行腳本
- 可以查看當前項目安裝的包
- 可以根據package.json文件下載依賴的包
- 在命令行中執行npm init -y 會自動在當前項目項目下生成package.json文件
-
書寫服務程序server.js
-
在myProject目錄下新建一個js文件,名字爲server。作爲服務啓動文件server.js
//因爲需要接受請求服務,所以需要引入http模塊服務 /* nodejs中模塊大致有三類 一類是內置模塊,一類是通過npm 安裝的第三方模塊 還有一類是自己根據開發需要寫的模塊叫自定義模塊 前面兩個模塊在引入時,直接require模塊名就可以,但是自定義模塊需要書寫相對路徑 * * */ //引入http模塊 const http=require("http"); const app=http.createServer((req,res)=>{ //因爲返回的內容是中文,所以需要設置編碼,要不然會亂碼 res.writeHead(200,{ "Content-Type":"text/html;charset=utf-8" }) //因爲請求的本質是url,所以需要根據url進行操作 if(req.url=="/"){ //write中的內容是需要返回給前端的 res.write("good nodejs,當前請求路徑是/的話會執行這裏的代碼"); res.end();//結束當前請求 } if(req.url=="/login"){ res.write("good nodejs,當前請求路徑是/login的話會執行這裏的代碼"); res.end();//結束當前請求 } }); //監聽請求的端口號,可以自定義 app.listen(8080,()=>{ console.log("node服務在localhost:8080端口啓動") })
-
在package.json中配置啓動腳本
-
-
啓動服務並訪問服務
- 在命令窗口中執行 npm run dev;dev是配置腳本的key;如果輸出服務在8080啓動就表示成功
- 在瀏覽器中輸入localhost:8080就可以看到服務器端返回的內容
- 在命令窗口中執行 npm run dev;dev是配置腳本的key;如果輸出服務在8080啓動就表示成功
-
備註
- nodejs服務並不指向具體的某一個目錄,和Apache不一樣
- nodejs服務中,請求的路徑和實際要顯示的內容沒有必然的對應關係,僅僅是路徑匹配
- 原生的nodejs服務僅僅作爲研究,因爲太麻煩了,開發中我用的是express框架,下一章會介紹express框架