中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

node.js 核心http模塊,起一個服務器,返回一個頁面的實例

發布時間:2020-09-16 18:58:52 來源:腳本之家 閱讀:351 作者:八bug哥哥 欄目:web開發

如下所示:

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

 if(req.url==="/"){
  //設置編碼
  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;
//創建一個服務,放入一個監聽函數,
let server=http.createServer(listener);
//
server.listen(port,function () {
 //啟動成功后
 console.log(`start${port}`);
})

看上面代碼,我們需要先創建三個文件

index.html

index.css

index.js

html文件里面,我們要引進css和js文件

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

我們運行上面js文件時候,就會創建一個靜態服務器,端口8080

然后返回客戶端一個index.html文件

瀏覽器渲染這個html文件,我們對應的css和js就加載進去了

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

let http=require("http"); //引入核心http模塊
let fs=require("fs");
let mime=require("mime"); //解決文件類型
let url=require("url");
//創建一個函數,req代表客戶端,res代表服務器可寫流
let listener=(req,res)=>{
//res是可寫流,有write和end
 let {query,pathname}=url.parse(req.url,true);
 if(pathname==="/"){
  //設置編碼
  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;
//創建一個服務,放入一個監聽函數,
let server=http.createServer(listener);
//
server.listen(port,function () {
 //啟動成功后
 console.log(`start${port}`);
})

以上這篇node.js 核心http模塊,起一個服務器,返回一個頁面的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兴仁县| 郯城县| 高邮市| 拉萨市| 芒康县| 娄底市| 涟水县| 天祝| 乡宁县| 大连市| 定日县| 牡丹江市| 革吉县| 凭祥市| 靖宇县| 兴安县| 安西县| 肥城市| 那坡县| 遵义市| 加查县| 台山市| 岗巴县| 永仁县| 铜川市| 梁河县| 恩施市| 济南市| 辉南县| 游戏| 双柏县| 咸丰县| 巢湖市| 吉林市| 玉溪市| 灌阳县| 通化县| 桂东县| 行唐县| 临洮县| 东港市|