通过nodejs 服务器读取HTML文件渲染到页面的方法

2020-06-17 06:53:47易采站长站整理

1.分别简单实现三个备用页面。

login.html页面

index.html页面

代码片段:


<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>软件开发网(mscto.com)</title>
<style>
.center {
margin: auto;
width: 60%;
border: 3px solid #73AD21;
padding: 10px;
}
</style>
</head>
<body>

<h2>元素居中对齐</h2>
<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.声明端口号,开启服务。