Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2522|回复: 1
打印 上一主题 下一主题

简单搭建nodeJS服务,访问本地站点文件

[复制链接]

697

主题

1142

帖子

4086

积分

认证用户组

Rank: 5Rank: 5

积分
4086
跳转到指定楼层
楼主
发表于 2017-8-24 16:20:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
搭建nodejs服务器步骤:
1.安装nodejs服务(从官网下载安装),node相当于apache服务器
2.在自己定义的目录下新建服务器文件如 server.js
例如,我在E:\PhpProject\HTML5\websocket下创建了server.js文件
  1. var http = require('http');//引入http模块

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

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

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

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

  17. }).listen(8888);

  18. console.log('服务器开启成功');
复制代码
3.在cmd控制台中cd切换进server.js所在的目录,然后执行node server.js命令
当控制台显示”服务器开启成功”则说明node服务器已经建立
4.在浏览器中访问服务器
在浏览器中输入
localhost:8888 , 浏览器显示“这是正文部分”。
查看cmd控制台,显示 “有客户端连接”
可在多个浏览器窗口中进行以上操作,每个浏览器窗口均会对应一次“有客户端连接”
以上步骤完成,node服务搭建完毕。下面是如何通过搭建的node服务访问本地站点的 text/html文本文件
访问本地站点文件
1.在自定义的目录下创建node服务文件server2.js
  1. var http = require('http');
  2. var fs = require('fs');//引入文件读取模块

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

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

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

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


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

  31.         }

  32.     });



  33. }).listen(8888);

  34. console.log('服务器开启成功');
复制代码
2.创建index.html文件
如果要访问index.html文件,当然你得先有这个文件,不然服务器读取失败,返回404
3.在cmd控制台cd切换到 server2.js的目录下执行node server2.js命令
开启服务器
4.在浏览器输入localhost:8888/index.html访问 该文件

http://blog.csdn.net/u014420383/article/details/47945819

回复

使用道具 举报

697

主题

1142

帖子

4086

积分

认证用户组

Rank: 5Rank: 5

积分
4086
沙发
 楼主| 发表于 2017-8-24 16:23:05 | 只看该作者
如果 css的样式没起作用 删除   res.writeHeader(200,{
                'content-type' : 'text/html;charset="utf-8"'
            });试试
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-11-11 02:08 , Processed in 0.060858 second(s), 19 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表