用nodeJS搭建本地文件服務器的幾種方法小結
搭建nodejs服務器步驟:
1.安裝nodejs服務,node相當于apache服務器
2.在自己定義的目錄下新建服務器文件如 server.js
例如,我在E:\PhpProject\HTML5\websocket下創(chuàng)建了server.js文件
var http = require('http');//引入http模塊 //開啟服務,監(jiān)聽8888端口 //端口號最好為6000以上 var server = http.createServer(function(req,res){ /* req用來接受客戶端數(shù)據(jù) res用來向客戶端發(fā)送服務器數(shù)據(jù) */ console.log('有客戶端連接');//創(chuàng)建連接成功顯示在后臺 //一參是http請求狀態(tài),200連接成功 //連接成功后向客戶端寫入頭信息 res.writeHeader(200,{ 'content-type' : 'text/html;charset="utf-8"' }); res.write('這是正文部分');//顯示給客戶端 res.end(); }).listen(8888); console.log('服務器開啟成功');
3.在cmd控制臺中cd切換進server.js所在的目錄,然后執(zhí)行node server.js命令
當控制臺顯示”服務器開啟成功”則說明node服務器已經(jīng)建立
4.在瀏覽器中訪問服務器
在瀏覽器中輸入
localhost:8888 , 瀏覽器顯示“這是正文部分”。
查看cmd控制臺,顯示 “有客戶端連接”
可在多個瀏覽器窗口中進行以上操作,每個瀏覽器窗口均會對應一次“有客戶端連接”
以上步驟完成,node服務搭建完畢。下面是如何通過搭建的node服務訪問本地站點的 text/html文本文件
訪問本地站點文件
1.在自定義的目錄下創(chuàng)建node服務文件server2.js
var http = require('http'); var fs = require('fs');//引入文件讀取模塊 var documentRoot = 'E:/PhpProject/html5/websocket/www'; //需要訪問的文件的存放目錄 var server= http.createServer(function(req,res){ var url = req.url; //客戶端輸入的url,例如如果輸入localhost:8888/index.html //那么這里的url == /index.html var file = documentRoot + url; console.log(url); //E:/PhpProject/html5/websocket/www/index.html fs.readFile( file , function(err,data){ /* 一參為文件路徑 二參為回調函數(shù) 回調函數(shù)的一參為讀取錯誤返回的信息,返回空就沒有錯誤 二參為讀取成功返回的文本內容 */ if(err){ res.writeHeader(404,{ 'content-type' : 'text/html;charset="utf-8"' }); res.write('<h1>404錯誤</h1><p>你要找的頁面不存在</p>'); res.end(); }else{ res.writeHeader(200,{ 'content-type' : 'text/html;charset="utf-8"' }); res.write(data);//將index.html顯示在客戶端 res.end(); } }); }).listen(8888); console.log('服務器開啟成功');
2.創(chuàng)建index.html文件
如果要訪問index.html文件,當然你得先有這個文件,不然服務器讀取失敗,返回404
3.在cmd控制臺cd切換到 server2.js的目錄下執(zhí)行node server2.js命令
開啟服務器
4.在瀏覽器輸入localhost:8888/index.html訪問 該文件
如果電腦沒有安裝nodejs的同學可以先到node官方下載并安裝好node程序。
安裝好nodejs后驗證一下是否安裝成功!如果出現(xiàn)則表明node已經(jīng)承裝安裝上去了!
安裝好node之后打開cmd 輸入 npm install anywhere -g 安裝anywhere ,然后等待直到出現(xiàn)以下界面。
以上兩個步驟都就緒以后,萬事俱備,只欠東風啦!在cmd頁面 找到你想搭建服務器的路徑,然后再當前路徑下輸入: anywhere 8860
然后瀏覽器就自動打開本地訪問網(wǎng)址,一個簡單的node服務器就這樣被我們搭建好啦!
END
注意事項
- anywhere 建議安裝全局的
- node 建議用32位的,64位目前兼容性沒有32位好
如果我們直接打開html文件他是以file:///方式打開的,但這種方式有時會遇到跨域的問題:“cross-origin”,所以我們需要搭建一個簡易的本地服務器,Nodejs就可以滿足我們這個需求:
比如我的本地服務器js文件就是這樣的(我把這個server.js放在了Nodejs安裝目錄下):
var connect = require("connect"); var serveStatic = require("serve-static"); var app = connect(); app.use(serveStatic("C:\\xxx\\xxx\\xxx\\項目文件夾")); app.listen(5000);
運行的話只要執(zhí)行:node server.js 就可以了
正常運行后我們就可以在瀏覽器輸入localhost:5000來訪問項目文件夾內的文件了。(如果是index.html文件可以省略不寫,默認加載的就是這個文件)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
nodejs的http和https下載遠程資源post數(shù)據(jù)實例
這篇文章主要為大家介紹了nodejs的http和https下載遠程資源post數(shù)據(jù)實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-09-09nodeJS實現(xiàn)簡單網(wǎng)頁爬蟲功能的實例(分享)
下面小編就為大家?guī)硪黄猲odeJS實現(xiàn)簡單網(wǎng)頁爬蟲功能的實例(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06node.js使用stream模塊實現(xiàn)自定義流示例
這篇文章主要介紹了node.js使用stream模塊實現(xiàn)自定義流,結合實例形式詳細分析了node.js基于stream模塊實現(xiàn)自定義的可讀流、可寫流、可讀寫流等相關操作技巧,需要的朋友可以參考下2020-02-02