用nodeJS搭建本地文件服务器的几种方法小结


Posted in NodeJs onMarch 16, 2017

搭建nodejs服务器步骤:

1.安装nodejs服务,node相当于apache服务器

2.在自己定义的目录下新建服务器文件如 server.js

例如,我在E:\PhpProject\HTML5\websocket下创建了server.js文件

var http = require('http');//引入http模块

//开启服务,监听8888端口
//端口号最好为6000以上
var server = http.createServer(function(req,res){
  /*
    req用来接受客户端数据
    res用来向客户端发送服务器数据
  */

  console.log('有客户端连接');//创建连接成功显示在后台

  //一参是http请求状态,200连接成功
  //连接成功后向客户端写入头信息
  res.writeHeader(200,{
    'content-type' : 'text/html;charset="utf-8"'
  });

  res.write('这是正文部分');//显示给客户端
  res.end();

}).listen(8888);

console.log('服务器开启成功');

3.在cmd控制台中cd切换进server.js所在的目录,然后执行node server.js命令

当控制台显示”服务器开启成功”则说明node服务器已经建立

4.在浏览器中访问服务器

在浏览器中输入

localhost:8888 , 浏览器显示“这是正文部分”。

查看cmd控制台,显示 “有客户端连接”

可在多个浏览器窗口中进行以上操作,每个浏览器窗口均会对应一次“有客户端连接”

以上步骤完成,node服务搭建完毕。下面是如何通过搭建的node服务访问本地站点的 text/html文本文件

访问本地站点文件

1.在自定义的目录下创建node服务文件server2.js

var http = require('http');
var fs = require('fs');//引入文件读取模块

var documentRoot = 'E:/PhpProject/html5/websocket/www';
//需要访问的文件的存放目录

var server= http.createServer(function(req,res){

  var url = req.url; 
  //客户端输入的url,例如如果输入localhost:8888/index.html
  //那么这里的url == /index.html 

  var file = documentRoot + url;
  console.log(url);
  //E:/PhpProject/html5/websocket/www/index.html 


  fs.readFile( file , function(err,data){
  /*
    一参为文件路径
    二参为回调函数
      回调函数的一参为读取错误返回的信息,返回空就没有错误
      二参为读取成功返回的文本内容
  */
    if(err){
      res.writeHeader(404,{
        'content-type' : 'text/html;charset="utf-8"'
      });
      res.write('<h1>404错误</h1><p>你要找的页面不存在</p>');
      res.end();
    }else{
      res.writeHeader(200,{
        'content-type' : 'text/html;charset="utf-8"'
      });
      res.write(data);//将index.html显示在客户端
      res.end();

    }

  });



}).listen(8888);

console.log('服务器开启成功');

2.创建index.html文件

如果要访问index.html文件,当然你得先有这个文件,不然服务器读取失败,返回404

3.在cmd控制台cd切换到 server2.js的目录下执行node server2.js命令

开启服务器

4.在浏览器输入localhost:8888/index.html访问 该文件

如果电脑没有安装nodejs的同学可以先到node官方下载并安装好node程序。

安装好nodejs后验证一下是否安装成功!如果出现则表明node已经承装安装上去了!

安装好node之后打开cmd 输入 npm install anywhere -g  安装anywhere ,然后等待直到出现以下界面。

以上两个步骤都就绪以后,万事俱备,只欠东风啦!在cmd页面 找到你想搭建服务器的路径,然后再当前路径下输入: anywhere 8860

然后浏览器就自动打开本地访问网址,一个简单的node服务器就这样被我们搭建好啦!

END

注意事项

  • anywhere 建议安装全局的
  • node 建议用32位的,64位目前兼容性没有32位好

 如果我们直接打开html文件他是以file:///方式打开的,但这种方式有时会遇到跨域的问题:“cross-origin”,所以我们需要搭建一个简易的本地服务器,Nodejs就可以满足我们这个需求:

比如我的本地服务器js文件就是这样的(我把这个server.js放在了Nodejs安装目录下):

var connect = require("connect");
var serveStatic = require("serve-static");

var app = connect();
app.use(serveStatic("C:\\xxx\\xxx\\xxx\\项目文件夹"));

app.listen(5000);

运行的话只要执行:node server.js 就可以了

正常运行后我们就可以在浏览器输入localhost:5000来访问项目文件夹内的文件了。(如果是index.html文件可以省略不写,默认加载的就是这个文件)

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

NodeJs 相关文章推荐
nodejs修复ipa处理过的png图片
Feb 17 NodeJs
Nodejs Stream 数据流使用手册
Apr 17 NodeJs
NodeJS连接MongoDB数据库时报错的快速解决方法
May 13 NodeJs
nodeJS删除文件方法示例
Dec 25 NodeJs
nodejs实例解析(输出hello world)
Jan 03 NodeJs
nodejs搭建本地http服务器教程
Mar 13 NodeJs
浅谈nodejs中的类定义和继承的套路
Jul 26 NodeJs
Nodejs进阶之服务端字符编解码和乱码处理
Sep 04 NodeJs
nodejs调取微信收货地址的方法
Dec 20 NodeJs
Nodejs模块载入运行原理
Feb 23 NodeJs
nodejs acl的用户权限管理详解
Mar 14 NodeJs
typescript nodejs 依赖注入实现方法代码详解
Jul 21 NodeJs
nodejs+express实现文件上传下载管理网站
Mar 15 #NodeJs
nodejs搭建本地http服务器教程
Mar 13 #NodeJs
搭建简单的nodejs http服务器详解
Mar 09 #NodeJs
nodejs读写json文件的简单方法(必看)
Mar 09 #NodeJs
Nodejs 获取时间加手机标识的32位标识实现代码
Mar 07 #NodeJs
nodejs中全局变量的实例解析
Mar 07 #NodeJs
nodejs根据ip数组在百度地图中进行定位
Mar 06 #NodeJs
You might like
php上传、管理照片示例
2006/10/09 PHP
asp和php下textarea提交大量数据发生丢失的解决方法
2008/01/20 PHP
PHP中使用SimpleXML检查XML文件结构实例
2015/01/07 PHP
PHP crc32()函数讲解
2019/02/14 PHP
laravel框架语言包拓展实现方法分析
2019/11/22 PHP
jQuery 无限级菜单的简单实例
2014/02/21 Javascript
JavaScript中的比较操作符&gt;、=、
2014/12/31 Javascript
jQuery实现简单滚动动画效果
2016/04/07 Javascript
JS判断是否在微信浏览器打开的简单实例(推荐)
2016/08/24 Javascript
JS短信验证码倒计时功能的实现(没有验证码,只有倒计时)
2016/10/27 Javascript
Node+Express+MongoDB实现登录注册功能实例
2017/04/23 Javascript
webpack配置sass模块的加载的方法
2017/07/30 Javascript
JS图片延迟加载插件LazyImgv1.0用法分析【附demo源码下载】
2017/09/04 Javascript
jQuery实现基本隐藏与显示效果的方法详解
2018/09/05 jQuery
Vue项目部署的实现(阿里云+Nginx代理+PM2)
2019/03/26 Javascript
小程序云开发之用户注册登录
2019/05/18 Javascript
原生js拖拽实现图形伸缩效果
2020/02/10 Javascript
python实现感知器算法(批处理)
2019/01/18 Python
很酷的python表白工具 你喜欢我吗
2019/04/11 Python
PyQt5 QListWidget选择多项并返回的实例
2019/06/17 Python
Python列表操作方法详解
2020/02/09 Python
浅析Django 接收所有文件,前端展示文件(包括视频,文件,图片)ajax请求
2020/03/09 Python
详解KMP算法以及python如何实现
2020/09/18 Python
将不规则的Python多维数组拉平到一维的方法实现
2021/01/11 Python
联想德国官网:Lenovo Germany
2018/07/04 全球购物
信用社实习人员自我鉴定
2013/09/20 职场文书
保安部任务及岗位职责
2014/02/25 职场文书
学雷锋演讲稿
2014/03/04 职场文书
中学生英语演讲稿
2014/04/26 职场文书
社区服务活动小结
2014/07/08 职场文书
船舶工程技术专业求职信
2014/08/07 职场文书
我为党旗添光彩演讲稿
2014/09/10 职场文书
2015年村计划生育工作总结
2015/04/28 职场文书
2015年节能减排工作总结
2015/05/14 职场文书
Vue通过懒加载提升页面响应速度
2021/05/10 Vue.js
Python 绘制多因子柱状图
2022/05/11 Python