nodejs搭建本地服务器并访问文件操作示例


Posted in NodeJs onMay 11, 2019

本文实例讲述了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搭建本地服务器并访问文件操作示例

希望本文所述对大家nodejs程序设计有所帮助。

NodeJs 相关文章推荐
用nodejs的实现原理和搭建服务器(动态)
Aug 10 NodeJs
详解nodejs 文本操作模块-fs模块(四)
Dec 22 NodeJs
nodejs个人博客开发第七步 后台登陆
Apr 12 NodeJs
nodejs入门教程五:连接数据库的方法分析
Apr 24 NodeJs
NodeJs使用Mysql模块实现事务处理实例
May 31 NodeJs
docker中编译nodejs并使用nginx启动
Jun 23 NodeJs
nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
Jul 05 NodeJs
使用Nodejs连接mongodb数据库的实现代码
Aug 21 NodeJs
NodeJS安装图文教程
Apr 19 NodeJs
NVM安装nodejs的方法实用步骤
Jan 16 NodeJs
Nodejs libuv运行原理详解
Aug 21 NodeJs
windows如何把已安装的nodejs高版本降级为低版本(图文教程)
Dec 14 NodeJs
M2实现Nodejs项目自动部署的方法步骤
May 05 #NodeJs
nodejs通过钉钉群机器人推送消息的实现代码
May 05 #NodeJs
nodejs中request库使用HTTPS代理的方法
Apr 30 #NodeJs
详解微信小程序-获取用户session_key,openid,unionid - 后端为nodejs
Apr 29 #NodeJs
nodejs检测因特网是否断开的解决方案
Apr 17 #NodeJs
Nodejs实现用户注册功能
Apr 14 #NodeJs
使用nodejs分离html文件里的js和css详解
Apr 12 #NodeJs
You might like
在Thinkphp中使用ajax实现无刷新分页的方法
2016/10/25 PHP
详解将数据从Laravel传送到vue的四种方式
2019/10/16 PHP
javascript 冒号 使用说明
2009/06/06 Javascript
点击下载链接 弹出页面实现代码
2009/10/01 Javascript
使用Javascript接收get传递的值的代码
2011/11/30 Javascript
jquery实现效果比较好的table选中行颜色
2014/03/25 Javascript
JS数组(Array)处理函数整理
2014/12/07 Javascript
jQuery简单tab切换效果实现方法
2015/04/08 Javascript
jQuery获取当前点击的对象元素(实现代码)
2016/05/19 Javascript
早该知道的7个JavaScript技巧
2016/06/21 Javascript
javascript this详细介绍
2016/09/19 Javascript
JS传参及动态修改页面布局
2017/04/13 Javascript
js获取地址栏参数的两种方法
2017/06/27 Javascript
Vue中定义全局变量与常量的各种方式详解
2017/08/23 Javascript
vue2.0学习之axios的封装与vuex介绍
2018/05/28 Javascript
Angular5集成eventbus的示例代码
2018/07/19 Javascript
vue iview的菜单组件Mune 点击不高亮的解决方案
2019/11/01 Javascript
vue实现导航标题栏随页面滚动渐隐渐显效果
2020/03/12 Javascript
js实现的订阅发布者模式简单示例
2020/03/14 Javascript
JS中的继承操作实例总结
2020/06/06 Javascript
介绍Python的Urllib库的一些高级用法
2015/04/30 Python
Python中使用ElementTree解析XML示例
2015/06/02 Python
Python实现的txt文件去重功能示例
2018/07/07 Python
python网络应用开发知识点浅析
2019/05/28 Python
python 实现二维列表转置
2019/12/02 Python
python爬虫开发之Beautiful Soup模块从安装到详细使用方法与实例
2020/03/09 Python
利用html5 canvas动态画饼状图的示例代码
2018/04/02 HTML / CSS
巴西网上药房:onofre
2016/11/21 全球购物
武汉高蓝德国际.net机试
2016/06/24 面试题
《美丽的田园》教学反思
2014/03/01 职场文书
统计员岗位职责范本
2015/04/14 职场文书
教师节联欢会主持词
2015/07/04 职场文书
python通配符之glob模块的使用详解
2021/04/24 Python
Keras在mnist上的CNN实践,并且自定义loss函数曲线图操作
2021/05/25 Python
36个正则表达式(开发效率提高80%)
2021/11/17 Javascript
Python爬虫 简单介绍一下Xpath及使用
2022/04/26 Python