最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node.js 核心http模塊,起一個(gè)服務(wù)器,返回一個(gè)頁面的實(shí)例

 更新時(shí)間:2017年09月11日 08:37:31   作者:八bug哥哥  
下面小編就為大家?guī)硪黄猲ode.js 核心http模塊,起一個(gè)服務(wù)器,返回一個(gè)頁面的實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

如下所示:

let http=require("http"); //引入核心http模塊
let fs=require("fs");
let mime={
 '.js':'application/javascript',
 '.css':'text/css'
}
//創(chuàng)建一個(gè)函數(shù),req代表客戶端,res代表服務(wù)器可寫流
let listener=(req,res)=>{
//res是可寫流,有write和end

 if(req.url==="/"){
  //設(shè)置編碼
  res.setHeader('Content-Type','text/html;charset=utf-8');
  fs.createReadStream('index.html').pipe(res);
 }else{
  if(fs.existsSync(`.${req.url}`)) {
   res.setHeader('Content-Type',mime[req.url.match(/\.\w+$/)[0]] +';charset=utf-8');
   fs.createReadStream(`.${req.url}`).pipe(res);
  }else{
   res.statusCode=404;
    res.end();
  }
 }

}
let port=8080;
//創(chuàng)建一個(gè)服務(wù),放入一個(gè)監(jiān)聽函數(shù),
let server=http.createServer(listener);
//
server.listen(port,function () {
 //啟動成功后
 console.log(`start${port}`);
})

看上面代碼,我們需要先創(chuàng)建三個(gè)文件

index.html

index.css

index.js

html文件里面,我們要引進(jìn)css和js文件

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <!--服務(wù)端引用路徑不支持相對路徑-->
 <link rel="stylesheet" href="index.css" rel="external nofollow" >
 <script src="index.js"></script>
</head>
<body>
<div>你好,帥嗎</div>
</body>
</html>

我們運(yùn)行上面js文件時(shí)候,就會創(chuàng)建一個(gè)靜態(tài)服務(wù)器,端口8080

然后返回客戶端一個(gè)index.html文件

瀏覽器渲染這個(gè)html文件,我們對應(yīng)的css和js就加載進(jìn)去了

其實(shí)上面寫法不是很簡便,node里面有模塊解決路徑獲取后綴名的問題,還有路徑問題

let http=require("http"); //引入核心http模塊
let fs=require("fs");
let mime=require("mime"); //解決文件類型
let url=require("url");
//創(chuàng)建一個(gè)函數(shù),req代表客戶端,res代表服務(wù)器可寫流
let listener=(req,res)=>{
//res是可寫流,有write和end
 let {query,pathname}=url.parse(req.url,true);
 if(pathname==="/"){
  //設(shè)置編碼
  res.setHeader('Content-Type','text/html;charset=utf-8');
  fs.createReadStream('index.html').pipe(res);
 }else{
  if(fs.existsSync(`.${pathname}`)) {
   //mime 第三方包 npm install mime --save
   //mime.lookup可以通過文件路徑后綴判斷是什么類型的
   res.setHeader('Content-Type', mime.lookup(pathname)+';charset=utf-8');
   fs.createReadStream(`.${pathname}`).pipe(res);
  }else{
   res.statusCode=404;
   res.end();
  }
 }

}
let port=8080;
//創(chuàng)建一個(gè)服務(wù),放入一個(gè)監(jiān)聽函數(shù),
let server=http.createServer(listener);
//
server.listen(port,function () {
 //啟動成功后
 console.log(`start${port}`);
})

以上這篇node.js 核心http模塊,起一個(gè)服務(wù)器,返回一個(gè)頁面的實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

疏附县| 吉木萨尔县| 贺兰县| 邳州市| 威海市| 平山县| 长顺县| 土默特左旗| 故城县| 凌云县| 乌鲁木齐市| 西吉县| 安泽县| 桑植县| 吉林市| 衡山县| 万山特区| 肇州县| 栾川县| 万全县| 昌乐县| 德昌县| 陇南市| 洛川县| 承德县| 土默特右旗| 焦作市| 新化县| 灵寿县| 朔州市| 客服| 宽城| 济宁市| 铅山县| 涟源市| 平潭县| 大连市| 辽中县| 新巴尔虎左旗| 乐清市| 无为县|