node.js安装,node搭建服务器并托管静态资源

1.node.js安装

2.node运行文件

  • 找到项目目录,地址栏输入cmd
  • 在终端输入 node 文件名.js 或 node 文件名(.js后缀可省略)

3.搭建node服务器

1.引入http模块
 let http = require('http')
2.创建web服务 ,返回http对象
let app = http.createServer((req,res)=>{
	req //请求体  浏览器->服务器
	req.url // 地址   提取地址栏数据
	req.on('data') //提取非地址栏数据 所有的http[s]都会触发end事件
	req.on('end') 
	
	res// 响应  服务器->浏览器
	res.writeHead(200,{'Content-Type':'text/html;charset=utf-8'});//响应头设置
	res.write(字符/数据<string><buffer>) //返回数据
	res.end() //结束响应 必须
})
3.监听服务器
app.listen(端口,[地址][回调])
  • 监听成功,回调一次
  • 端口: 1-65535, 1024以下系统占用
  • 虚拟地址localhost 真实域名xx.duapp.com
  • 更新后,需要每次服务器自动重启
4.启动服务器
  • 在终端输入node 文件名 来启动服务器

4.托管静态资源

什么是静态资源:项目中的.html , .css , .js , .jpg , .json …等项目文件。

1.fs模块
  1. 读取文件
fs.readFile('文件路径',[编码方式],(err,data)=>{})
  1. 更名
fs.renameSync('改前','改后');
  1. 删除
fs.unlinkSync('文件路径')
2.引入fs模块(磁盘操作,文件操作)
let fs = require('fs')
3.在服务器里托管静态资源
// 实例化http对象(服务器)
let app = http.createServer((req, res) => {
// 判断是要读取动态资源(接口api)|静态资源
    if (req.url.indexOf('/api') !== -1) {
// 处理接口
      console.log('处理接口',req.url)
      res.end()  
    } else {
// 处理静态资源,www为项目目录
      console.log('处理静态资源', req.url);
      try {
        let path = req.url === '/' ? '/index.html' : req.url;
        let html = fs.readFileSync('./www' + path);
// 返回
        res.write(html)
        res.end()
//返回nopage.html为报错页面
      } catch (e) {
        let error = fs.readFileSync('./www/nopage.html');
        res.write(error);
        res.end()
      }
    }
})
// 监听服务器对象
app.listen(端口)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值