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

