【nodejs】http加载静态文件
来源:互联网 发布:不规则体积计算软件 编辑:程序博客网 时间:2024/06/07 00:27
问题提出:浏览器向后台发送请求后,后台返回一个html界面。但是在浏览器中没有加载js、css等静态资源,查找愿意后发现是Content-Type的原因。浏览器不知道css、js等文件的文件格式,无法成功加载静态文件。所以,需要设置正确的文件格式。
解决方案一:手动设置Content-Type。
server.js
var http = require("http")var fs = require("fs")http.createServer(function(req,res){var path = req.url;console.log("path1: "+path)if(path == "/"){path = "/html/validate.html";}sendFile(res,path);}).listen(3000)function sendFile(res,path){var path = process.cwd()+path;fs.readFile(path,function(err,stdout,stderr){if(!err){var data = stdout;var type = path.substr(path.lastIndexOf(".")+1,path.length)res.writeHead(200,{'Content-type':"text/"+type});//在这里设置文件类型,告诉浏览器解析方式res.write(data);}res.end();})}
解决方案二:使用mime模块,npm install mime.
由于方式的类型很多,会涉及到image、video等文件,mime将这些类型进行了封装。
测试文件的目录结构:
0 0
- 【nodejs】http加载静态文件
- nodejs静态资源文件管理
- Nodejs页面访问加载静态资源
- django 加载静态文件
- 加载Properties静态文件
- django静态文件加载
- NodeJs 安装静态的文件服务
- 静态加载界面文件和动态加载
- nodejs--http
- nodejs-http
- NodeJS-http
- nodejs ejs 请求路径和静态资源文件路径
- nodejs小记之handlebars视图与静态文件布置
- nodejs返回html代码 引入路径问题+静态文件问题
- NodeJS服务器篇之简单静态文件合并
- JavaScript静态及动态加载Flex文件
- jetty-maven-plugin 热加载静态文件
- 【django】静态文件和template的加载
- 51nod 1097 拼成最小的数
- hashCode()和equals()重写
- Android7.0解析Init.rc文件
- j2se(一)_Number 类Integer、Long、Byte、Double、Float、Short
- android 字符串中的\n 直接显示,不会换行
- 【nodejs】http加载静态文件
- 【算法分析】回溯法解数独(九宫格)算法
- R语言基础画图/绘图/作图
- APP的主题背景风格
- 一开机便会出现 BTServer.exe - 应用程序错误(0xc0150002)
- 腾讯云二级域名绑定到web服务器下的二级目录方法
- linux下安全备份升级(网页)
- OkHttp简单用法
- 安全工程师面试经验