本文实例讲述了nodejs搭建本地服务器并访问文件操作。分享给大家供大家参考,具体如下:
安装node:https://nodejs.org/en/download/
在本地建立目录:f:/nodetest,在该目录下新建index.html作为我们将要访问的内容。新建server.js作为node开启的入口:
$ cd f:/nodetest$ mkdir index.html$ mkdir server.js
index.html文件里简单写一点东西:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>node Test</title> <style type="text/css"> html,body{ margin: 0; padding: 0; } .node{ width: 300px; margin: 0 auto; padding-top:100px; text-align: center; } .node h1{ color:rgb(33,199,40); } </style></head><body> <div class="node"> <h1>Hello Nodejs</h1> </div></body></html>
接下来写server.js:
const PORT = 8888; //访问端口号8888 //端口号最好为6000以上var http = require('http'); //引入http模块var fs = require('fs'); //引入fs模块var url = require('url');//引入url模块var path = require('path');//引入path模块// req : 从浏览器带来的请求信息// res : 从服务器返回给浏览器的信息var server = http.createServer(function(req,res){ var pathname = url.parse(req.url).pathname;; //客户端输入的url,例如如果输入localhost:8888/index.html,那么这里的url == /index.html //url.parse()方法将一个URL字符串转换成对象并返回,通过pathname来访问此url的地址。 var realPath = path.join('F:/nodejs/nodetest',pathname); //完整的url路径 console.log(realPath); // F:/nodejs/nodetest/index.html fs.readFile(realPath,function(err,data){ /* realPath为文件路径 第二个参数为回调函数 回调函数的一参为读取错误返回的信息,返回空就没有错误 二参为读取成功返回的文本内容 */ if(err){ //未找到文件 res.writeHead(404,{ 'content-type':'text/plain' }); res.write('404,页面不在'); res.end(); }else{ //成功读取文件 res.writeHead(200,{ 'content-type':'text/html;charset="utf-8' }); res.write(data); res.end(); } })});server.listen(PORT); //监听端口console.log('服务成功开启')
cmd下开启服务:
$ node server.js
结果:
希望本文所述对大家nodejs程序设计有所帮助。
新闻热点
疑难解答