iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >如何使用node搭建静态资源管理器
  • 407
分享到

如何使用node搭建静态资源管理器

2024-04-02 19:04:59 407人浏览 安东尼
摘要

这篇文章将为大家详细讲解有关如何使用node搭建静态资源管理器,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体如下:我么都知道,老牌的3p服务器都是自带静态资源管理器的

这篇文章将为大家详细讲解有关如何使用node搭建静态资源管理器,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

具体如下:

我么都知道,老牌的3p服务器都是自带静态资源管理器的。但是node不同,它没有WEB容器,它的路由地址和真实地址可以没有联系,所有node的优点,是可以把路由做得相当漂亮。

但静态资源管理器也是必不可少的东西,今天我主要用node的fs模块,自己手写一个简单的静态资源管理器。

首先,建一个static文件夹,所有的静态文件都将放到这个文件夹下

如何使用node搭建静态资源管理器

引包

var Http = require("http");
var url = require("url");
var fs = require("fs");
var path = require("path");

path包是为了读取文件的后缀名

var extname = path.extname(pathname);

用fs读出文件

var http = require("http");
var url = require("url");
var fs = require("fs");
var path = require("path");
http.createServer(function(req,res) {
  //得到用户路径
  var pathname = url.parse(req.url).pathname;
  //判断此时用户输入的是文件地址还是文件夹地址
  //如果是文件夹地址,那么自动请求文件夹中的index.html
  if(pathname.indexOf(".") == -1) {
    pathname = "index.html";
  }
  //拓展名
  var extname = path.extname(pathname);

  //把文件读出来
  res.writeHead(200,{"Content-type":"text/html;charset=UTF-8"});
  fs.readFile("./static/"+pathname,function(err,data) {
    if(err) {
      //如果此文件不存在,就因该用404返回
      fs.readFile("./static/404.html",function(err,data) {
        res.writeHead(404,{"Content-type":"text/html;charset=UTF-8"});
        res.end(data);
      });
      return;
      //res.end('<center>服务器傲娇的向你抛出了一个404错误</center')
    };
    //MIME类型,就是
    //网页文件:ttext/html
    //jpg文件:image/jpg
    getMime(extname,function(mime) {
      res.writeHead(200,{"Content-type":mime});
      res.end(data);
    });

  });

}).listen(3000,"127.0.0.1");
function getMime(extname,callback) {
  fs.readFile("./static/data.JSON",function(err,data) {    
    if(err) {
      throw Error("找不到data,json文件");
      return;
    }
    var data = JSON.parse(data);
    var mime = data[extname]||"text/plain";
    callback(mime);
  });
  
  
}

getMime()函数的作用是给不同类型的文件指定不同的content-type。这里我用了两种方法,一种是引入一个包含很多mime的json文件,另一种是直接列举case语句。

引入json的方法要复杂一下。你要注意怎样传参和怎样去设置回调,来避免异步。

关于“如何使用node搭建静态资源管理器”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: 如何使用node搭建静态资源管理器

本文链接: https://www.lsjlt.com/news/73070.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用node搭建静态资源管理器
    这篇文章将为大家详细讲解有关如何使用node搭建静态资源管理器,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体如下:我么都知道,老牌的3p服务器都是自带静态资源管理器的...
    99+
    2024-04-02
  • nodejs搭建静态资源服务器
    随着互联网的发展,Web开发在全球范围内已经成为了一项非常热门的行业,对于开发人员来说,为了能够快速有效地开发并发布代码,需要有一个静态资源服务器来帮助我们管理和处理静态资源,特别是在前后端分离的开发模式中使用频率较高,而Node.js发布...
    99+
    2023-05-14
  • 如何使用Nodejs搭建服务器访问html、css、JS等静态资源文件
    这篇文章给大家分享的是有关如何使用Nodejs搭建服务器访问html、css、JS等静态资源文件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。第一步,俗话说的好,工欲善其事,必先...
    99+
    2024-04-02
  • Spring Boot的静态资源如何处理
    这篇文章主要介绍“Spring Boot的静态资源如何处理”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Spring Boot的静态资源如何处理”文章能帮助大家解决...
    99+
    2024-04-02
  • 使用Express处理请求和托管静态资源方式
    目录ExpressExpress对比Http模块Express的主要作用Express安装Express静态资源处理express.static()托管多个静态资源目录挂载路径前缀E...
    99+
    2024-04-02
  • 使用SpringBoot如何实现加载静态资源
    这篇文章给大家介绍使用SpringBoot如何实现加载静态资源,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在SpringBoot中加载静态资源和在普通的web应用中不太一样。默认情况下,spring Boot从cla...
    99+
    2023-05-31
    springboot 静态资源
  • Django模板继承和静态资源如何使用
    这篇“Django模板继承和静态资源如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“...
    99+
    2024-04-02
  • CentOS搭建web服务器的动态缓存与静态资源优化
    在CentOS上搭建Web服务器时,可以采取以下措施来进行动态缓存和静态资源优化:1. 使用缓存插件:安装和配置缓存插件,如Varn...
    99+
    2023-10-10
    CentOS
  • 如何使用Node.js实现一个静态资源服务器
    今天就跟大家聊聊有关如何使用Node.js实现一个静态资源服务器,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。项目涉及...
    99+
    2024-04-02
  • js如何处理静态资源文件请求
    这篇文章主要为大家展示了“js如何处理静态资源文件请求”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“js如何处理静态资源文件请求”这篇文章吧。html文件<...
    99+
    2024-04-02
  • 怎么使用nginx代理实现静态资源访问
    今天小编给大家分享一下怎么使用nginx代理实现静态资源访问的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一. 目标:为了通...
    99+
    2023-07-02
  • 如何使用Node写静态文件服务器
    目录背景功能介绍代码实现基础代码实现大文件优化Stream减少文件传输带宽使用浏览器缓存什么是Etag总结背景 作为前端工程师,我想大家一定对静态文件服务器不会陌生。所谓的静态文件服...
    99+
    2024-04-02
  • 如何使用Node.js搭建一个静态Web服务器
    这篇文章主要介绍了如何使用Node.js搭建一个静态Web服务器的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何使用Node.js搭建一个静态Web服务器文章都会有所收获,下...
    99+
    2024-04-02
  • 如何使用PHP开发缓存优化静态资源加载
    如何使用PHP开发缓存优化静态资源加载简介:在网页开发中,静态资源如图片、CSS样式表和JavaScript脚本文件等往往会占据大部分的加载时间。对于大型网站或者高并发访问的网站来说,如何优化静态资源的加载速度是一个重要的问题。本文将介绍如...
    99+
    2023-11-07
    PHP开发技巧 PHP缓存优化 静态资源加载
  • 使用springboot对外部静态资源文件的处理操作
    目录springboot对外部静态资源文件的处理1、存方面倒还简单,这里贴上一个获取微信临时素材并保存的方法2、取,由于对springboot不熟悉,所以在这上面踩了坑主要使用到这2...
    99+
    2024-04-02
  • windows资源管理器如何修复
    要修复Windows资源管理器,您可以尝试以下方法:1. 重启资源管理器:按下Ctrl + Shift + Esc键打开任务管理器,...
    99+
    2023-09-11
    windows
  • windows资源管理器如何打开
    要打开Windows资源管理器,你可以通过以下几种方法之一:1. 使用快捷键:按下"Win"键 + "...
    99+
    2023-09-12
    windows
  • win11如何调出资源管理器
    要调出Windows 11的资源管理器,您可以使用以下几种方法:1. 使用键盘快捷键:按下Win键(Windows图标键)+ E键,...
    99+
    2023-09-12
    win11
  • Windows下使用资源管理器管理FTP指南
    一、     简介 1.       FTP简介 FTP服务其实就是对文件的一种集中存储服务,让用户像使用自己本地机器上...
    99+
    2023-05-25
    资源管理器管理 FTP 指南 管理器 资源 管理FTP
  • Flutter包管理器和资源管理使用学习
    目录什么叫包管理器Flutter 包管理器Pub仓库资源管理配置图片资源配置全局字体资源结束语什么叫包管理器 包管理器就是用来管理程序运行依赖的一个配置应用。在程序运行中,我们会用到...
    99+
    2022-12-08
    Flutter 包管理器资源管理 Flutter 包管理器
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作