91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

如何通過nodejs服務器讀取HTML文件渲染到頁面

發布時間:2021-06-26 15:11:13 來源:億速云 閱讀:117 作者:小新 欄目:web開發

這篇文章主要介紹了如何通過nodejs服務器讀取HTML文件渲染到頁面,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

1.分別簡單實現三個備用頁面。

login.html頁面

index.html頁面

代碼片段:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>菜鳥教程(runoob.com)</title> 
<style>
.center {
  margin: auto;
  width: 60%;
  border: 3px solid #73AD21;
  padding: 10px;
}
</style>
</head>
<body>

<h3>元素居中對齊</h3>
<p>水平居中塊級元素 (如 div), 可以使用 margin: auto;</p>

<div class="center">
 <p><b>注意: </b>使用 margin:auto 無法兼容 IE8, 除非 !DOCTYPE 已經聲明。</p>
</div>

</body>
</html>

notFount.html頁面

<!DOCTYPE HTML>
<html>
<head>
<script>

</script>
<style>
.center {
  margin: auto;
  width: 60%;
  border: 3px solid #73AD21;
  padding: 10px;
	color:red;
}
</style>
</head>
<body>

<div class ="center" >404 Not Fount</div>

</body>
</html>

2.修改創建的nodejs 服務器頁面,對不同地址的請求做出不同的響應頁面。

在url地址判斷中添加,文件讀取代碼,以實現讀取定義的html頁面。

聲明文件系統對象:

// 聲明文件操作系統對象 
  var fs = require('fs');

實現文件內容讀取并渲染到頁面

if(url ==='/'){ 
  //response.writeHead(響應狀態碼,響應頭對象): 發送一個響應頭給請求。 
  response.writeHead(200,{'Content-Type':'text/html'}) 
  // 如果url=‘/' ,讀取指定文件下的html文件,渲染到頁面。 
  fs.readFile('./practice/login.html','utf-8',function(err,data){ 
  if(err){ 
  throw err ; 
  } 
  response.end(data); 
  }); 
}

完整代碼:

	/**
		
	1.使用 HTTP 服務器與客戶端交互,需要 require('http')。
		聲明http協議
	*/
	var http = require('http');
	
	
	// 聲明文件操作系統對象
	var fs = require('fs');
	/**
	2.獲取服務器對象
		1.通過 http.createServer([requestListener]) 創建一個服務

		requestListener <Function>
		返回: <http.Server>
		返回一個新建的 http.Server 實例。
		對于服務端來說,主要做三件事:
		1.接受客戶端發出的請求。
		2.處理客戶端發來的請求。
		3.向客戶端發送響應。
	*/
	
	var server = http.createServer();

	/**
	3.聲明端口號,開啟服務。
		server.listen([port][, host][, backlog][, callback])

		port <number> :端口號
		host <string> :主機ip
		backlog <number> server.listen() 函數的通用參數
		callback <Function> server.listen() 函數的通用參數
		Returns: <net.Server>
		啟動一個TCP服務監聽輸入的port和host。

		如果port省略或是0,系統會隨意分配一個在'listening'事件觸發后能被server.address().port檢索的無用端口。

		如果host省略,如果IPv6可用,服務器將會接收基于unspecified IPv6 address (::)的連接,否則接收基于unspecified IPv4 address (0.0.0.0)的連接
	
	*/
	server.listen(9001, function(){
		 console.log('服務器正在端口號:9001上運行......');
	})
	
	
	/**
	4.給server 實例對象添加request請求事件,該請求事件是所有請求的入口。
		任何請求都會觸發改事件,然后執行事件對應的處理函數。
	
		server.on('request',function(){
			 console.log('收到客戶端發出的請求.......');
		});
	*/

	
	/**
	5.設置請求處理函數。
		請求回調處理函數需要接收兩個參數。
		request :request是一個請求對象,可以拿到當前瀏覽器請求的一些信息。
			eg:請求路徑,請求方法等
		response: response是一個響應對象,可以用來給請求發送響應。
	
	*/
	server.on('request',function(request,response){
		
		var url = request.url;
		if(url ==='/'){
			//response.writeHead(響應狀態碼,響應頭對象): 發送一個響應頭給請求。
			response.writeHead(200,{'Content-Type':'text/html'})
			// 如果url=‘/' ,讀取指定文件下的html文件,渲染到頁面。
			fs.readFile('./practice/login.html','utf-8',function(err,data){
				if(err){
					throw err ;
				}
				response.end(data);
			});
		
		}else if(url === '/login'){
			response.writeHead(200,{'Content-Type':'text/html'});
			// 如果url=‘/' ,讀取指定文件下的html文件,渲染到頁面。
			fs.readFile('./practice/login.html','utf-8',function(err,data){
				if(err){
					throw err ;
				}
				response.end(data);
			});
		}else if(url === '/index'){
			response.writeHead(200,{'Content-Type':'text/html'});
			// 如果url=‘/' ,讀取指定文件下的html文件,渲染到頁面。
			fs.readFile('./practice/index.html','utf-8',function(err,data){
				if(err){
					throw err ;
				}
				response.end(data);
			});
		}else{
			response.writeHead(200,{'Content-Type':'text/html'});
			// 如果url=‘/' ,讀取指定文件下的html文件,渲染到頁面。
			fs.readFile('./practice/notFount.html','utf-8',function(err,data){
				if(err){
					throw err ;
				}
				response.end(data);
			});
		}
		
	});	
	

最終實現效果:

開啟nodejs服務器,在地址欄中輸入:127.0.0.0.1:9001或127.0.0.0.1:9001/login

如何通過nodejs服務器讀取HTML文件渲染到頁面

在地址欄中輸入:127.0.0.0.1:9001/index

如何通過nodejs服務器讀取HTML文件渲染到頁面

在地址欄中輸入:127.0.0.0.1:9001/其他內容

如何通過nodejs服務器讀取HTML文件渲染到頁面

感謝你能夠認真閱讀完這篇文章,希望小編分享的“如何通過nodejs服務器讀取HTML文件渲染到頁面”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

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

AI

丹寨县| 登封市| 南阳市| 正蓝旗| 建阳市| 自治县| 大同市| 历史| 遂平县| 鄂托克前旗| 固镇县| 密山市| 元谋县| 榆社县| 开平市| 九龙城区| 衡东县| 岐山县| 十堰市| 同心县| 莲花县| 天全县| 丁青县| 阳泉市| 宜兰县| 丰镇市| 石林| 丹凤县| 奎屯市| 哈巴河县| 吉木乃县| 平乡县| 越西县| 会同县| 武平县| 满城县| 衡山县| 辽源市| 清新县| 河东区| 广德县|