nodejs搭建本地服务器并访问文件的方法


Posted in NodeJs onMarch 03, 2017

安装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('服务成功开启')

结果:

nodejs搭建本地服务器并访问文件的方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
基于 Docker 开发 NodeJS 应用
Jul 30 NodeJs
NodeJS学习笔记之网络编程
Aug 03 NodeJs
nodejs教程之入门
Nov 21 NodeJs
Jquery通过ajax请求NodeJS返回json数据实例
Nov 08 NodeJs
nodejs和php实现图片访问实时处理
Jan 05 NodeJs
nodejs读写json文件的简单方法(必看)
Mar 09 NodeJs
nodejs中使用HTTP分块响应和定时器示例代码
Mar 19 NodeJs
Express+Nodejs 下的登录拦截实现代码
Jul 01 NodeJs
nodejs body-parser 解析post数据实例
Jul 26 NodeJs
详解nodejs 配置文件处理方案
Jan 02 NodeJs
纯异步nodejs文件夹(目录)复制功能
Sep 03 NodeJs
nodejs的安装使用与npm的介绍
Sep 11 NodeJs
NodeJS仿WebApi路由示例
Feb 28 #NodeJs
Nodejs多站点切换Htpps协议详解及简单实例
Feb 23 #NodeJs
NodeJs下的测试框架Mocha的简单介绍
Feb 22 #NodeJs
基于Nodejs利用socket.io实现多人聊天室
Feb 22 #NodeJs
NodeJS配置HTTPS服务实例分享
Feb 19 #NodeJs
解决nodejs中使用http请求返回值为html时乱码的问题
Feb 18 #NodeJs
利用nodejs监控文件变化并使用sftp上传到服务器
Feb 18 #NodeJs
You might like
PHP实现MVC开发得最简单的方法――模型
2007/04/10 PHP
深入PHP操作MongoDB的技术总结
2013/06/02 PHP
解析php中array_merge与array+array的区别
2013/06/21 PHP
php使用curl发送json格式数据实例
2013/12/17 PHP
二进制交叉权限微型php类分享
2014/02/07 PHP
php自定义session示例分享
2014/04/22 PHP
phpmyadmin出现Cannot start session without errors问题解决方法
2014/08/14 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
2016/01/09 PHP
javascript jQuery $.post $.ajax用法
2008/07/09 Javascript
jQuery EasyUI API 中文文档 - Calendar日历使用
2011/10/19 Javascript
Javascript学习笔记之相等符号与严格相等符号
2014/11/23 Javascript
jQuery代码实现对话框右上角菜单带关闭×
2016/05/03 Javascript
jquery.uploadifive插件怎么解决上传限制图片或文件大小问题
2017/05/08 jQuery
详解angularjs利用ui-route异步加载组件
2017/05/21 Javascript
Angular2.0/4.0 使用Echarts图表的示例代码
2017/12/07 Javascript
VUE注册全局组件和局部组件过程解析
2019/10/10 Javascript
原生js实现九宫格拖拽换位
2021/01/26 Javascript
[01:06]DOTA2隆重推出2016冬季勇士令状 内含上海特级锦标赛互动指南
2016/02/17 DOTA
[01:11:02]Secret vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python遍历文件夹和读写文件的实现代码
2016/08/28 Python
python 数据清洗之数据合并、转换、过滤、排序
2017/02/12 Python
django ajax json的实例代码
2018/05/29 Python
简单了解Python matplotlib线的属性
2019/06/29 Python
Python 中的 global 标识对变量作用域的影响
2019/08/12 Python
pyinstaller打包opencv和numpy程序运行错误解决
2019/08/16 Python
pytorch获取vgg16-feature层输出的例子
2019/08/20 Python
Python实现图像去噪方式(中值去噪和均值去噪)
2019/12/18 Python
PyQt5的QWebEngineView使用示例
2020/10/20 Python
基于Python实现粒子滤波效果
2020/12/01 Python
施华洛世奇中国官网:SWAROVSKI中国
2020/06/16 全球购物
化工工艺专业求职信
2013/09/22 职场文书
现金会计岗位职责
2013/12/05 职场文书
保卫科工作岗位职责
2014/03/01 职场文书
毕业评语大全
2014/05/04 职场文书
本科生就业推荐信
2014/05/19 职场文书
CSS 使用 resize 实现图片拖拽切换预览功能(强大功能)
2021/08/23 HTML / CSS