【Node.js基础篇】(五)使用mime模块来响应css、js文件的请求

1.概述

上一篇中我们实现了客户端的路由请求,包括直接使用js返回内容响应和使用html文件响应,但上一篇中最后的显示结果只是一个很普通的html文件,不能使用css样式和js文件,今天我们就通过设置响应文件的mime类型来实现不同文件的响应。

文章会先介绍什么是mime类型,然后介绍两种设置mime类型的方法,第一种是通过后缀名判断文件类型,从而进行响应;第二种是使用第三方mime模块进行响应。

示例是在上一篇的基础上扩展的。

2.mime类型简介

MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。(百度百科)

简单点说,mime是一个互联网标准,通过设定它就可以设定文件在浏览器的打开方式。(有兴趣的话,可以试一下用css打开方式打开html文件,更助于理解)

3.两种设定mime类型方法

1.直接提取文件后缀名设定mime类型

代码是基于上一篇的代码,只改动了Response这一个函数,如下:

//函数Response,将HTML、css、js等文件响应给客户端
var Response = function(res,filePath){
   
   
    //读取文件,读取完成后给客户端响应
    fs.readFile(filePath,function(err,data){
   
   
        if(err){                        //如果失败,就返回错误文件
            if