svn服务器搭建和使用_简单使用nodejs搭建一个静态服务器
生活随笔
收集整理的這篇文章主要介紹了
svn服务器搭建和使用_简单使用nodejs搭建一个静态服务器
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前提:系統安裝nodejsrequire相應的模塊 創建服務器 配置端口 啟動服務器
搭建步驟
使用nodejs搭建服務器,簡單的來說可以分為三步:必要的nodejs模塊
以下模塊都是以 var http=require('http')的方式在代碼中使用- http 創建http服務
- url 處理網站的url
- path 處理服務器文件的路徑,因為同一個文件在不同操作系統中路徑的表示方法是不一樣的,需要把他處理成統一的
- fs 讀取服務器的文件
一個最簡單的nodejs服務器程序
//1.require http模塊 var http=require('http') //2.創建服務器,傳入回調函數,作用是處理網頁請求 var server=http.createServer(function(req,res){res.setHeader('Content-Type','text/html;charset=utf-8')res.writeHead(200,'OK')res.write(`<html><head></head><body><h1>hello world<h1><h2>你好</h2></body></html>`)res.end() }) console.log('open http://localhost:8080') //3.設置監聽的端口 server.listen(8080)打開終端,進入node-server文件夾,輸入node index.js,然后在瀏覽器的地址欄輸入:http://localhost:8080就可以看見hello world了
關于代碼:
- req代表請求,res代表響應
- setHeader的作用是設置響應頭
- setHeader('Content-Type','text/html;charset=utf-8')作用是告訴瀏覽這是html代碼,使用html方式去解析接收到的字符串
- setHeader('Content-Type','text/plain;charset=utf-8')告訴瀏覽器用純文本分方式去解析接收到的字符串,頁面顯示的內容是這樣的:
- charset=utf-8 作用是告訴瀏覽器使用utf-8方式解碼,如果不寫或者解碼方式與文件的編碼方式不一致,在網頁端會看到亂碼的情況
- writeHead 作用是寫http狀態碼,可以自己定義,比如說writeHead(200,'hello world'),在響應頭里可以看見,但一般按照http的規定去定義
- write 作用是向響應體里面寫入字符串,可以分多次寫入
- end 作用是結束響應,如果不寫,網頁會一直處于加載狀態
- listen 作用是監聽端口
有了上面的知識,就可以寫一個簡單的靜態nodejs服務器了
搭建簡單的靜態服務器
服務器文件文件結構
node-server|-index.js|-static |-css |-style.css|-js |-main.js|-img |-cat.png|-index.html //網頁的html文件index.js代碼:
//加載必須的模塊 var http=require('http') var fs=require('fs') var url=require('url') var path=require('path')//定位靜態目錄的位置,根據請求找出對應的文件 function staticRoot(staticPath,req,res){var pathObj=url.parse(req.url,true)if(pathObj.pathname==='/'){pathObj.pathname+='index.html'} //讀取靜態目錄里面的文件,然后發送出去var filePath=path.join(staticPath,pathObj.pathname)fs.readFile(filePath,'binary',function(err,content){if(err){res.writeHead(404,'Not Found')res.end('<h1>404 Not Found</h1>')}else{res.writeHead(200,'Not Found')res.write(content,'binary')res.end()}}) } //創建服務器 var server=http.createServer(function(req,res){staticRoot(path.join(__dirname,'static'),req,res) }) //監聽8080端口 server.listen(8080) console.log('http://localhost:8080')輸入網址得到的結果
網頁的請求狀態
上面的代碼主要是使用nodejs的fs模塊,可以讀取服務器里面的文件,style.css、main.js、index.html和cat.png都是fs模塊根據不同的請求路徑來讀取得到的,最終通過res.write()方法發送到瀏覽器端。
如果需要路由功能,只需要在index.js里面添加路由處理程序就可以了。
總結
以上是生活随笔為你收集整理的svn服务器搭建和使用_简单使用nodejs搭建一个静态服务器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: atoi函数_吊打面试官 | 腾讯经典考
- 下一篇: wps 模拟分析 规划求解_FFU气流仿