用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分页类代码分享
Jun 17 NodeJs
nodejs URL模块操作URL相关方法介绍
Mar 03 NodeJs
nodejs修复ipa处理过的png图片
Feb 17 NodeJs
详解HTTPS 的原理和 NodeJS 的实现
Jul 04 NodeJs
NodeJS实现视频转码的示例代码
Nov 18 NodeJs
nodejs 生成和导出 word的实例代码
Jul 31 NodeJs
NodeJS如何实现同步的方法示例
Aug 24 NodeJs
CentOS7中源码编译安装NodeJS的完整步骤
Oct 13 NodeJs
nodejs检测因特网是否断开的解决方案
Apr 17 NodeJs
基于nodejs的微信JS-SDK简单应用实现
May 21 NodeJs
NodeJs生成sitemap站点地图的方法示例
Jun 11 NodeJs
NodeJS 文件夹拷贝以及删除功能
Sep 03 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
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
2007/05/03 PHP
MySQL GBK→UTF-8编码转换
2007/05/24 PHP
PHP生成带有雪花背景的验证码
2008/09/28 PHP
使用PHPMyAdmin修复论坛数据库的图文方法
2012/01/09 PHP
php函数间的参数传递(值传递/引用传递)
2013/09/23 PHP
php构造函数的继承方法
2015/02/09 PHP
Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
2017/02/07 PHP
JS是否可以跨文件同时控制多个iframe页面的应用技巧
2007/12/16 Javascript
Extjs ajax同步请求时post方式参数发送方式
2009/08/05 Javascript
Jquery获取复选框被选中值的简单方法
2013/07/04 Javascript
JavaScript将页面表格导出为Excel的具体实现
2013/12/27 Javascript
使用jQuery异步加载 JavaScript脚本解决方案
2014/04/20 Javascript
JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格)
2015/01/13 Javascript
简化版手机端照片预览组件
2015/04/13 Javascript
jQuery旋转木马式幻灯片轮播特效
2015/12/04 Javascript
jQuery 添加样式属性的优先级别方法(推荐)
2017/06/08 jQuery
Bootstrap提示框效果的实例代码
2017/07/12 Javascript
vue 自定义全局方法,在组件里面的使用介绍
2018/02/28 Javascript
Web安全之XSS攻击与防御小结
2018/12/13 Javascript
详解滑动穿透(锁body)终极探索
2019/04/16 Javascript
怎么使用javascript深度拷贝一个数组
2019/06/06 Javascript
JS深入学习之数组对象排序操作示例
2020/05/01 Javascript
JavaScript代码模拟鼠标自动点击事件示例
2020/08/07 Javascript
利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例
2017/08/08 Python
对python指数、幂数拟合curve_fit详解
2018/12/29 Python
django-allauth入门学习和使用详解
2019/07/03 Python
python多线程案例之多任务copy文件完整实例
2019/10/29 Python
Python实现ATM系统
2020/02/17 Python
使用python创建Excel工作簿及工作表过程图解
2020/05/27 Python
css3 transform 3d 使用css3创建动态3d立方体(html5实践)
2013/01/06 HTML / CSS
2015年元旦文艺汇演主持词
2014/03/26 职场文书
热门专业求职信
2014/05/24 职场文书
群众路线教育实践活动对照检查材料思想汇报(副处级领导)
2014/10/04 职场文书
2014年小学语文工作总结
2014/12/20 职场文书
python requests模块的使用示例
2021/04/07 Python
Python find()、rfind()方法及作用
2022/12/24 Python