7.0 http 在node中的使用

7.1 http的基本演示:req:客户端请求的数据,res服务端响应的数据

let http = require(“http”);
// 创建服务器
let server = http.createServer((req,res)=>{
//请求使用url地址
console.log(req.url)
//text/html 中的html 可以改变
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.write(“Hello haihai”)
res.write(“

哈哈哈哈

”) //这里是否输出哈哈哈哈 取决于上面的text/html
//如需增添多行内容,可使用res.write("…")
res.end(“helle work”)
});
// 监听 //这里的80和127.0.0.1端口号,可以随便改。但访问到的服务器都是本地服务器
server.listen(80,“127.0.0.1”)

7.2 前言:
Node.js没有web容器:没有根目录,不像php,Javaweb通过切换目录结构切换页面;所有的页面资源都得通过路径配置
在Node中,采用fs模块读入文件,并手动配置路由
Node.js擅长于顶层路由设计,url与物理文件并不是一一对应的

7.3---------------加载html http 在node中进行路由跳转(html页面跳转),即为:一个页面跳转到另一个页面
let http = require(“http”);
let fs =require(“fs”);
// 创建服务器
let server = http.createServer((req,res)=> {
if(req.url === “/test1.html”){ 注意(其优点):这里的/test1.html目录可以随意更改,更改后在浏览器上访问时要输入相应的名字:例如把/test1.html改为/page,那么在浏览器上则要输入/page 即可访问相同的数据,前提是下面目录中的./test1.html,不可以进行更改,否则访问无效
fs.readFile("./test1.html",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(data)
}else {
console.log(err);
}
})
}else if(req.url === “/test2.html”){
fs.readFile("./test2.html",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(data)
}
})
}else if(req.url === “/”){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(“Hello work”)
}else {
res.writeHead(400,{“Content-type”:“text/html;charset=UTF-8”});
console.log(“页面显示错误”);
}

});

// 监听 //这里的80和127.0.0.1端口号,可以随便改。但访问到的服务器都是本地服务器
server.listen(80,“127.0.0.1”)

7.3.2---------------加载css 在test1.html中 添加css样式
let http = require(“http”);
let fs =require(“fs”);
// 创建服务器
let server = http.createServer((req,res)=> {
if(req.url === “/page”){
fs.readFile("./test1.html",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(data)
}else {
console.log(err);
}
})
}else if(req.url === “/test2.html”){
fs.readFile("./test2.html",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(data)
}
})
}else if(req.url === “/”){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(“Hello work”)
}else if(req.url === “/css/index.css”){ //csss样式加载
fs.readFile("./css/index.css",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/css”}); //更改头部 css 对应text/css
res.end(data)
res.end(data)
}
})
}else {
res.writeHead(400,{“Content-type”:“text/html;charset=UTF-8”});
console.log(“页面显示错误”);
}

});

// 监听 //这里的80和127.0.0.1端口号,可以随便改。但访问到的服务器都是本地服务器
server.listen(80,“127.0.0.1”)

7.3.3----------------加载图片 在test1.html中 添加图片样式
let http = require(“http”);
let fs =require(“fs”);
// 创建服务器
let server = http.createServer((req,res)=> {
if(req.url === “/page”){
fs.readFile("./test1.html",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(data)
}else {
console.log(err);
}
})
}else if(req.url === “/test2.html”){
fs.readFile("./test2.html",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(data)
}
})
}else if(req.url === “/”){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(“Hello work”)
}else if(req.url === “/css/index.css”){ //csss样式加载
fs.readFile("./css/index.css",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/css”});
res.end(data)
}
})
}else if(req.url === “/img/1.jpg”){ //图片样式加载
fs.readFile("./img/1.jpg",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“image/jpg”}); //更改头部 图片 对应image/jpg
res.end(data)
}
})
}else {
res.writeHead(400,{“Content-type”:“text/html;charset=UTF-8”});
console.log(“页面显示错误”);
}

});

// 监听 //这里的80和127.0.0.1端口号,可以随便改。但访问到的服务器都是本地服务器
server.listen(80,“127.0.0.1”)

7.3.4-------------加载视频 在test1.html中 添加视频样式
let http = require(“http”);
let fs =require(“fs”);
// 创建服务器
let server = http.createServer((req,res)=> {
if(req.url === “/page”){
fs.readFile("./test1.html",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(data)
}else {
console.log(err);
}
})
}else if(req.url === “/test2.html”){
fs.readFile("./test2.html",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(data)
}
})
}else if(req.url === “/”){
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(“Hello work”)
}else if(req.url === “/css/index.css”){ //csss样式加载
fs.readFile("./css/index.css",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“text/css”});
res.end(data)
}
})
}else if(req.url === “/img/1.jpg”){ //图片样式加载
fs.readFile("./img/1.jpg",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“image/jpg”});
res.end(data)
}
})
}else if(req.url === “/source/1.mp4”){ //视频样式加载
fs.readFile("./source/1.mp4",(err,data)=>{
if (!err){
res.writeHead(200,{“Content-type”:“video/mpeg4”}); //更改头部 MP4 对应mpeg4
res.end(data)
}
})
}else {
res.writeHead(400,{“Content-type”:“text/html;charset=UTF-8”});
console.log(“页面显示错误”);
}

});

// 监听 //这里的80和127.0.0.1端口号,可以随便改。但访问到的服务器都是本地服务器
server.listen(80,“127.0.0.1”)

8.-------------url的基本使用:
let http = require(“http”)
let url = require(“url”)

http.createServer((req,res)=>{
// console.log(req.url);
let myUrl = url.parse(req.url);
console.log(myUrl);
res.end(“hello word”)
}).listen(80,“127.0.0.1”)

8.1----------Http-表单提交:即:在页面中点提交数据传到对应的form地址上,就可以在对应的地址上的js页面中渲染对应的数据

  1.在页面中:http
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title></title>
</head>
<body>
<form action="http://127.0.0.1:80/" method="get"><p>姓名:<input type="text" name="name"></p><p>年龄:<input type="text" name="age"></p><p><input type="radio" name="sex" value="男">男<input type="radio" name="sex" value="女">女</p><input type="submit" value="提交">
</form>
</body>
</html>
2.在js中的内容

let http = require(“http”)
let url = require(“url”)

http.createServer((req,res)=>{
// console.log(req.url);
let myUrl = url.parse(req.url,true); //注意:要增加true 表示对象参数,不然不能使用queryObj.对象
let queryObj = myUrl.query;
console.log(queryObj);
console.log(queryObj.name);
console.log(queryObj.age);
console.log(queryObj.sex);
// console.log(myUrl);
res.writeHead(200,{“Content-type”:“text/html;charset=UTF-8”});
res.end(“hello word:哈哈哈”)
}).listen(80,“127.0.0.1”)

8.2-----------HTTP-表单提交-图片处理 npm i -S formidable 地址:https://github.com/node-formidable/node-formidable
let http = require(“http”)
let url = require(“url”)
let querystring = require(“querystring”);
let formidable = require(“formidable”)
let util = require(“util”);

http.createServer((req,res)=>{
if (req.url === “/postmsg” && req.method.toLowerCase() === “post”){
// 1.实例化对象
let form = new formidable.IncomingForm();
// 2.设置上传的文件路径
form.uploadDir = “./uploads”;
// 3.获取表单的内容
form.parse(req,(err,fields,files)=>{
res.writeHead(200,{‘content-type’:‘text/plain;charset=UTF-8’})
res.write(‘received upload:\n\n’);
res.end(util.inspect({ fields: fields, files: files }));
})
}
}).listen(80,“127.0.0.1”)

8.3----------------uuid 随机生成树 地址:https://github.com/kelektiv/node-uuid

9.-----------------静态资源库 需要 1.js文件内容
2.需要mime.json文件内容(作用:用来解析是否图片,文档,音频等内容,方便res.writeHead(400,{“Content-type”:“text/html;charset=UTF-8”})中的(text/html自由更改),不需要一个个调用)
3.需要一个或者多个页面… 注意.js文件里面的地址和路径都在一个文件夹下设立的.
此例子的作用是:在node中开启服务器,然后在浏览器中自由切换页面内容
9.1—.js文件内容
let http = require(“http”);
let fs =require(“fs”);
let url = require(“url”)
let path = require(“path”)
// 1.创建服务器
http.createServer((req,res)=>{
// 1.1获取url地址
let pathUrl = url.parse(req.url);
let pathName = pathUrl.pathname;
// console.log(pathUrl);
// console.log(pathName);
// res.end(“1111”)

// 2.处理路径
if(pathName.lastIndexOf(".") === -1){
pathName += “/index.html”
}
// 3.路径拼接
let fileUrl = “.\” + path.normalize(pathName) // path.normalize()规范化,去除无效的/或者.(点)

// console.log(pathName);
console.log(fileUrl);

let extname = path.extname(fileUrl) //抽取后缀路径
// 4.读取文件,根据路径读取
fs.readFile(fileUrl,(err,data)=>{
// 4.1没有找到
if(err){
res.writeHead(400,{“Content-type”:“text/html;charset=UTF-8”});
res.end("<h1>404,页面不存在</h1>")
throw err
}

// 4.2找到对应的mime内容
getType(extname,(contentType)=>{
res.writeHead(200,{“Content-Type”:contentType});
res.end(data)
})

})

}).listen(80,“127.0.0.1”)

function getType(extName,callBack) {
// 读取mime.json文件
fs.readFile("./mime.json",(err,data)=>{
if (err){
throw err;
return
}
let mimeJson = JSON.parse(data)
let contentType = mimeJson[extName] || “text/plain”

callBack(contentType)
// console.log(mimeJson);
})

}

9.2-------.index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<h4>哈哈哈哈,进入首页了</h4>
</body>
</html>

mime.json的内容和使用方式:
1.mime.json内容:

{ ".323":"text/h323" ,".3gp":"video/3gpp" ,".aab":"application/x-authoware-bin" ,".aam":"application/x-authoware-map" ,".aas":"application/x-authoware-seg" ,".acx":"application/internet-property-stream" ,".ai":"application/postscript" ,".aif":"audio/x-aiff" ,".aifc":"audio/x-aiff" ,".aiff":"audio/x-aiff" ,".als":"audio/X-Alpha5" ,".amc":"application/x-mpeg" ,".ani":"application/octet-stream" ,".apk":"application/vnd.android.package-archive" ,".asc":"text/plain" ,".asd":"application/astound" ,".asf":"video/x-ms-asf" ,".asn":"application/astound" ,".asp":"application/x-asap" ,".asr":"video/x-ms-asf" ,".asx":"video/x-ms-asf" ,".au":"audio/basic" ,".avb":"application/octet-stream" ,".avi":"video/x-msvideo" ,".awb":"audio/amr-wb" ,".axs":"application/olescript" ,".bas":"text/plain" ,".bcpio":"application/x-bcpio" ,".bin ":"application/octet-stream" ,".bld":"application/bld" ,".bld2":"application/bld2" ,".bmp":"image/bmp" ,".bpk":"application/octet-stream" ,".bz2":"application/x-bzip2" ,".c":"text/plain" ,".cal":"image/x-cals" ,".cat":"application/vnd.ms-pkiseccat" ,".ccn":"application/x-cnc" ,".cco":"application/x-cocoa" ,".cdf":"application/x-cdf" ,".cer":"application/x-x509-ca-cert" ,".cgi":"magnus-internal/cgi" ,".chat":"application/x-chat" ,".class":"application/octet-stream" ,".clp":"application/x-msclip" ,".cmx":"image/x-cmx" ,".co":"application/x-cult3d-object" ,".cod":"image/cis-cod" ,".conf":"text/plain" ,".cpio":"application/x-cpio" ,".cpp":"text/plain" ,".cpt":"application/mac-compactpro" ,".crd":"application/x-mscardfile" ,".crl":"application/pkix-crl" ,".crt":"application/x-x509-ca-cert" ,".csh":"application/x-csh" ,".csm":"chemical/x-csml" ,".csml":"chemical/x-csml" ,".css":"text/css" ,".cur":"application/octet-stream" ,".dcm":"x-lml/x-evm" ,".dcr":"application/x-director" ,".dcx":"image/x-dcx" ,".der":"application/x-x509-ca-cert" ,".dhtml":"text/html" ,".dir":"application/x-director" ,".dll":"application/x-msdownload" ,".dmg":"application/octet-stream" ,".dms":"application/octet-stream" ,".doc":"application/msword" ,".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document" ,".dot":"application/msword" ,".dvi":"application/x-dvi" ,".dwf":"drawing/x-dwf" ,".dwg":"application/x-autocad" ,".dxf":"application/x-autocad" ,".dxr":"application/x-director" ,".ebk":"application/x-expandedbook" ,".emb":"chemical/x-embl-dl-nucleotide" ,".embl":"chemical/x-embl-dl-nucleotide" ,".eps":"application/postscript" ,".epub":"application/epub+zip" ,".eri":"image/x-eri" ,".es":"audio/echospeech" ,".esl":"audio/echospeech" ,".etc":"application/x-earthtime" ,".etx":"text/x-setext" ,".evm":"x-lml/x-evm" ,".evy":"application/envoy" ,".exe":"application/octet-stream" ,".fh4":"image/x-freehand" ,".fh5":"image/x-freehand" ,".fhc":"image/x-freehand" ,".fif":"application/fractals" ,".flr":"x-world/x-vrml" ,".flv":"flv-application/octet-stream" ,".fm":"application/x-maker" ,".fpx":"image/x-fpx" ,".fvi":"video/isivideo" ,".gau":"chemical/x-gaussian-input" ,".gca":"application/x-gca-compressed" ,".gdb":"x-lml/x-gdb" ,".gif":"image/gif" ,".gps":"application/x-gps" ,".gtar":"application/x-gtar" ,".gz":"application/x-gzip" ,".h":"text/plain" ,".hdf":"application/x-hdf" ,".hdm":"text/x-hdml" ,".hdml":"text/x-hdml" ,".hlp":"application/winhlp" ,".hqx":"application/mac-binhex40" ,".hta":"application/hta" ,".htc":"text/x-component" ,".htm":"text/html" ,".html":"text/html" ,".hts":"text/html" ,".htt":"text/webviewhtml" ,".ice":"x-conference/x-cooltalk" ,".ico":"image/x-icon" ,".ief":"image/ief" ,".ifm":"image/gif" ,".ifs":"image/ifs" ,".iii":"application/x-iphone" ,".imy":"audio/melody" ,".ins":"application/x-internet-signup" ,".ips":"application/x-ipscript" ,".ipx":"application/x-ipix" ,".isp":"application/x-internet-signup" ,".it":"audio/x-mod" ,".itz":"audio/x-mod" ,".ivr":"i-world/i-vrml" ,".j2k":"image/j2k" ,".jad":"text/vnd.sun.j2me.app-descriptor" ,".jam":"application/x-jam" ,".jar":"application/java-archive" ,".java":"text/plain" ,".jfif":"image/pipeg" ,".jnlp":"application/x-java-jnlp-file" ,".jpe":"image/jpeg" ,".jpeg":"image/jpeg" ,".jpg":"image/jpeg" ,".jpz":"image/jpeg" ,".js":"application/x-javascript" ,".jwc":"application/jwc" ,".kjx":"application/x-kjx" ,".lak":"x-lml/x-lak" ,".latex":"application/x-latex" ,".lcc":"application/fastman" ,".lcl":"application/x-digitalloca" ,".lcr":"application/x-digitalloca" ,".lgh":"application/lgh" ,".lha":"application/octet-stream" ,".lml":"x-lml/x-lml" ,".lmlpack":"x-lml/x-lmlpack" ,".log":"text/plain" ,".lsf":"video/x-la-asf" ,".lsx":"video/x-la-asf" ,".lzh":"application/octet-stream" ,".m13":"application/x-msmediaview" ,".m14":"application/x-msmediaview" ,".m15":"audio/x-mod" ,".m3u":"audio/x-mpegurl" ,".m3url":"audio/x-mpegurl" ,".m4a":"audio/mp4a-latm" ,".m4b":"audio/mp4a-latm" ,".m4p":"audio/mp4a-latm" ,".m4u":"video/vnd.mpegurl" ,".m4v":"video/x-m4v" ,".ma1":"audio/ma1" ,".ma2":"audio/ma2" ,".ma3":"audio/ma3" ,".ma5":"audio/ma5" ,".man":"application/x-troff-man" ,".map":"magnus-internal/imagemap" ,".mbd":"application/mbedlet" ,".mct":"application/x-mascot" ,".mdb":"application/x-msaccess" ,".mdz":"audio/x-mod" ,".me":"application/x-troff-me" ,".mel":"text/x-vmel" ,".mht":"message/rfc822" ,".mhtml":"message/rfc822" ,".mi":"application/x-mif" ,".mid":"audio/mid" ,".midi":"audio/midi" ,".mif":"application/x-mif" ,".mil":"image/x-cals" ,".mio":"audio/x-mio" ,".mmf":"application/x-skt-lbs" ,".mng":"video/x-mng" ,".mny":"application/x-msmoney" ,".moc":"application/x-mocha" ,".mocha":"application/x-mocha" ,".mod":"audio/x-mod" ,".mof":"application/x-yumekara" ,".mol":"chemical/x-mdl-molfile" ,".mop":"chemical/x-mopac-input" ,".mov":"video/quicktime" ,".movie":"video/x-sgi-movie" ,".mp2":"video/mpeg" ,".mp3":"audio/mpeg" ,".mp4":"video/mp4" ,".mpa":"video/mpeg" ,".mpc":"application/vnd.mpohun.certificate" ,".mpe":"video/mpeg" ,".mpeg":"video/mpeg" ,".mpg":"video/mpeg" ,".mpg4":"video/mp4" ,".mpga":"audio/mpeg" ,".mpn":"application/vnd.mophun.application" ,".mpp":"application/vnd.ms-project" ,".mps":"application/x-mapserver" ,".mpv2":"video/mpeg" ,".mrl":"text/x-mrml" ,".mrm":"application/x-mrm" ,".ms":"application/x-troff-ms" ,".msg":"application/vnd.ms-outlook" ,".mts":"application/metastream" ,".mtx":"application/metastream" ,".mtz":"application/metastream" ,".mvb":"application/x-msmediaview" ,".mzv":"application/metastream" ,".nar":"application/zip" ,".nbmp":"image/nbmp" ,".nc":"application/x-netcdf" ,".ndb":"x-lml/x-ndb" ,".ndwn":"application/ndwn" ,".nif":"application/x-nif" ,".nmz":"application/x-scream" ,".nokia-op-logo":"image/vnd.nok-oplogo-color" ,".npx":"application/x-netfpx" ,".nsnd":"audio/nsnd" ,".nva":"application/x-neva1" ,".nws":"message/rfc822" ,".oda":"application/oda" ,".ogg":"audio/ogg" ,".oom":"application/x-AtlasMate-Plugin" ,".p10":"application/pkcs10" ,".p12":"application/x-pkcs12" ,".p7b":"application/x-pkcs7-certificates" ,".p7c":"application/x-pkcs7-mime" ,".p7m":"application/x-pkcs7-mime" ,".p7r":"application/x-pkcs7-certreqresp" ,".p7s":"application/x-pkcs7-signature" ,".pac":"audio/x-pac" ,".pae":"audio/x-epac" ,".pan":"application/x-pan" ,".pbm":"image/x-portable-bitmap" ,".pcx":"image/x-pcx" ,".pda":"image/x-pda" ,".pdb":"chemical/x-pdb" ,".pdf":"application/pdf" ,".pfr":"application/font-tdpfr" ,".pfx":"application/x-pkcs12" ,".pgm":"image/x-portable-graymap" ,".pict":"image/x-pict" ,".pko":"application/ynd.ms-pkipko" ,".pm":"application/x-perl" ,".pma":"application/x-perfmon" ,".pmc":"application/x-perfmon" ,".pmd":"application/x-pmd" ,".pml":"application/x-perfmon" ,".pmr":"application/x-perfmon" ,".pmw":"application/x-perfmon" ,".png":"image/png" ,".pnm":"image/x-portable-anymap" ,".pnz":"image/png" ,".pot,":"application/vnd.ms-powerpoint" ,".ppm":"image/x-portable-pixmap" ,".pps":"application/vnd.ms-powerpoint" ,".ppt":"application/vnd.ms-powerpoint" ,".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation" ,".pqf":"application/x-cprplayer" ,".pqi":"application/cprplayer" ,".prc":"application/x-prc" ,".prf":"application/pics-rules" ,".prop":"text/plain" ,".proxy":"application/x-ns-proxy-autoconfig" ,".ps":"application/postscript" ,".ptlk":"application/listenup" ,".pub":"application/x-mspublisher" ,".pvx":"video/x-pv-pvx" ,".qcp":"audio/vnd.qcelp" ,".qt":"video/quicktime" ,".qti":"image/x-quicktime" ,".qtif":"image/x-quicktime" ,".r3t":"text/vnd.rn-realtext3d" ,".ra":"audio/x-pn-realaudio" ,".ram":"audio/x-pn-realaudio" ,".rar":"application/octet-stream" ,".ras":"image/x-cmu-raster" ,".rc":"text/plain" ,".rdf":"application/rdf+xml" ,".rf":"image/vnd.rn-realflash" ,".rgb":"image/x-rgb" ,".rlf":"application/x-richlink" ,".rm":"audio/x-pn-realaudio" ,".rmf":"audio/x-rmf" ,".rmi":"audio/mid" ,".rmm":"audio/x-pn-realaudio" ,".rmvb":"audio/x-pn-realaudio" ,".rnx":"application/vnd.rn-realplayer" ,".roff":"application/x-troff" ,".rp":"image/vnd.rn-realpix" ,".rpm":"audio/x-pn-realaudio-plugin" ,".rt":"text/vnd.rn-realtext" ,".rte":"x-lml/x-gps" ,".rtf":"application/rtf" ,".rtg":"application/metastream" ,".rtx":"text/richtext" ,".rv":"video/vnd.rn-realvideo" ,".rwc":"application/x-rogerwilco" ,".s3m":"audio/x-mod" ,".s3z":"audio/x-mod" ,".sca":"application/x-supercard" ,".scd":"application/x-msschedule" ,".sct":"text/scriptlet" ,".sdf":"application/e-score" ,".sea":"application/x-stuffit" ,".setpay":"application/set-payment-initiation" ,".setreg":"application/set-registration-initiation" ,".sgm":"text/x-sgml" ,".sgml":"text/x-sgml" ,".sh":"application/x-sh" ,".shar":"application/x-shar" ,".shtml":"magnus-internal/parsed-html" ,".shw":"application/presentations" ,".si6":"image/si6" ,".si7":"image/vnd.stiwap.sis" ,".si9":"image/vnd.lgtwap.sis" ,".sis":"application/vnd.symbian.install" ,".sit":"application/x-stuffit" ,".skd":"application/x-Koan" ,".skm":"application/x-Koan" ,".skp":"application/x-Koan" ,".skt":"application/x-Koan" ,".slc":"application/x-salsa" ,".smd":"audio/x-smd" ,".smi":"application/smil" ,".smil":"application/smil" ,".smp":"application/studiom" ,".smz":"audio/x-smd" ,".snd":"audio/basic" ,".spc":"application/x-pkcs7-certificates" ,".spl":"application/futuresplash" ,".spr":"application/x-sprite" ,".sprite":"application/x-sprite" ,".sdp":"application/sdp" ,".spt":"application/x-spt" ,".src":"application/x-wais-source" ,".sst":"application/vnd.ms-pkicertstore" ,".stk":"application/hyperstudio" ,".stl":"application/vnd.ms-pkistl" ,".stm":"text/html" ,".svg":"image/svg+xml" ,".sv4cpio":"application/x-sv4cpio" ,".sv4crc":"application/x-sv4crc" ,".svf":"image/vnd" ,".svg":"image/svg+xml" ,".svh":"image/svh" ,".svr":"x-world/x-svr" ,".swf":"application/x-shockwave-flash" ,".swfl":"application/x-shockwave-flash" ,".t":"application/x-troff" ,".tad":"application/octet-stream" ,".talk":"text/x-speech" ,".tar":"application/x-tar" ,".taz":"application/x-tar" ,".tbp":"application/x-timbuktu" ,".tbt":"application/x-timbuktu" ,".tcl":"application/x-tcl" ,".tex":"application/x-tex" ,".texi":"application/x-texinfo" ,".texinfo":"application/x-texinfo" ,".tgz":"application/x-compressed" ,".thm":"application/vnd.eri.thm" ,".tif":"image/tiff" ,".tiff":"image/tiff" ,".tki":"application/x-tkined" ,".tkined":"application/x-tkined" ,".toc":"application/toc" ,".toy":"image/toy" ,".tr":"application/x-troff" ,".trk":"x-lml/x-gps" ,".trm":"application/x-msterminal" ,".tsi":"audio/tsplayer" ,".tsp":"application/dsptype" ,".tsv":"text/tab-separated-values" ,".ttf":"application/octet-stream" ,".ttz":"application/t-time" ,".txt":"text/plain" ,".uls":"text/iuls" ,".ult":"audio/x-mod" ,".ustar":"application/x-ustar" ,".uu":"application/x-uuencode" ,".uue":"application/x-uuencode" ,".vcd":"application/x-cdlink" ,".vcf":"text/x-vcard" ,".vdo":"video/vdo" ,".vib":"audio/vib" ,".viv":"video/vivo" ,".vivo":"video/vivo" ,".vmd":"application/vocaltec-media-desc" ,".vmf":"application/vocaltec-media-file" ,".vmi":"application/x-dreamcast-vms-info" ,".vms":"application/x-dreamcast-vms" ,".vox":"audio/voxware" ,".vqe":"audio/x-twinvq-plugin" ,".vqf":"audio/x-twinvq" ,".vql":"audio/x-twinvq" ,".vre":"x-world/x-vream" ,".vrml":"x-world/x-vrml" ,".vrt":"x-world/x-vrt" ,".vrw":"x-world/x-vream" ,".vts":"workbook/formulaone" ,".wav":"audio/x-wav" ,".wax":"audio/x-ms-wax" ,".wbmp":"image/vnd.wap.wbmp" ,".wcm":"application/vnd.ms-works" ,".wdb":"application/vnd.ms-works" ,".web":"application/vnd.xara" ,".wi":"image/wavelet" ,".wis":"application/x-InstallShield" ,".wks":"application/vnd.ms-works" ,".wm":"video/x-ms-wm" ,".wma":"audio/x-ms-wma" ,".wmd":"application/x-ms-wmd" ,".wmf":"application/x-msmetafile" ,".wml":"text/vnd.wap.wml" ,".wmlc":"application/vnd.wap.wmlc" ,".wmls":"text/vnd.wap.wmlscript" ,".wmlsc":"application/vnd.wap.wmlscriptc" ,".wmlscript":"text/vnd.wap.wmlscript" ,".wmv":"audio/x-ms-wmv" ,".wmx":"video/x-ms-wmx" ,".wmz":"application/x-ms-wmz" ,".wpng":"image/x-up-wpng" ,".wps":"application/vnd.ms-works" ,".wpt":"x-lml/x-gps" ,".wri":"application/x-mswrite" ,".wrl":"x-world/x-vrml" ,".wrz":"x-world/x-vrml" ,".ws":"text/vnd.wap.wmlscript" ,".wsc":"application/vnd.wap.wmlscriptc" ,".wv":"video/wavelet" ,".wvx":"video/x-ms-wvx" ,".wxl":"application/x-wxl" ,".x-gzip":"application/x-gzip" ,".xaf":"x-world/x-vrml" ,".xar":"application/vnd.xara" ,".xbm":"image/x-xbitmap" ,".xdm":"application/x-xdma" ,".xdma":"application/x-xdma" ,".xdw":"application/vnd.fujixerox.docuworks" ,".xht":"application/xhtml+xml" ,".xhtm":"application/xhtml+xml" ,".xhtml":"application/xhtml+xml" ,".xla":"application/vnd.ms-excel" ,".xlc":"application/vnd.ms-excel" ,".xll":"application/x-excel" ,".xlm":"application/vnd.ms-excel" ,".xls":"application/vnd.ms-excel" ,".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" ,".xlt":"application/vnd.ms-excel" ,".xlw":"application/vnd.ms-excel" ,".xm":"audio/x-mod" ,".xml":"text/plain",".xml":"application/xml",".xmz":"audio/x-mod" ,".xof":"x-world/x-vrml" ,".xpi":"application/x-xpinstall" ,".xpm":"image/x-xpixmap" ,".xsit":"text/xml" ,".xsl":"text/xml" ,".xul":"text/xul" ,".xwd":"image/x-xwindowdump" ,".xyz":"chemical/x-pdb" ,".yz1":"application/x-yz1" ,".z":"application/x-compress" ,".zac":"application/x-zaurus-zac" ,".zip":"application/zip" ,".json":"application/json"
}

2.mime.json在node中的使用(此下操作,在9目录中有显示):
//1.先定义一个构造函数,方便调用
function getType(extName,callBack) {
// 1.1读取mime.json文件
fs.readFile("./mime.json",(err,data)=>{ //./mime.json是在根目录下读取
if (err){
throw err; //抛出异常
return
}
let mimeJson = JSON.parse(data) //将mime.json解析为json模式
let contentType = mimeJson[extName] || “text/plain” //定义默认text/plain读取文本,extName传来一个后缀格式

    callBack(contentType)          //返回对应格式                  // console.log(mimeJson);
})

}
2.调用
// 4.2找到对应的mime内容
getType(extname,(contentType)=>{
res.writeHead(200,{“Content-Type”:contentType});
res.end(data)
})

node中http的请求数据访问在浏览器中的基本使用方法和例子/静态资源库/url的基本使用/mime.json的内容和使用方式相关推荐

  1. Cli4.5.x 中使用axios请求数据

    Cli4.5.x 中使用axios请求数据 文章目录 Cli4.5.x 中使用axios请求数据 前言 一.安装并配置axios 1.安装axios 2.vue-axios 二.各种请求方法 三.请求 ...

  2. 控制层远程调用业务层_如何应用数据访问服务层分离系统中的业务层和持久层之间耦合关系...

    软件项目实训及课程设计指导--如何应用数据访问服务层分离业务层和持久层之间耦合关系 作者已经在本系列文章<软件项目实训及课程设计指导--如何正确地设计J2EE应用系统持久层中的各个组件结构及关系 ...

  3. Python语言编程学习:numpy中的array格式数据切片与pandas中的dataframe格式数据切片、相互转换

    Python语言编程学习:numpy中的array格式数据切片与pandas中的dataframe格式数据切片.相互转换 目录 numpy中的array格式数据切片与pandas中的dataframe ...

  4. ASP.NET2.0中数据源控件之异步数据访问

    IAsyncResult 在第 1 部分和第 2 部分中, 建立了 WeatherDataSource 控件,该控件针对 weather.com(英文)所提供的 XML API 来运行,使用 WebR ...

  5. Spring Boot中使用Spring-data-jpa让数据访问更简单、更优雅

    在上一篇Spring中使用JdbcTemplate访问数据库 中介绍了一种基本的数据访问方式,结合构建RESTful API和使用Thymeleaf模板引擎渲染Web视图的内容就已经可以完成App服务 ...

  6. 如何在js中使用ajax请求数据,在 JS 中怎么使用 Ajax 来进行请求

    在 JS 中怎么使用 Ajax 来进行请求 发布时间:2021-07-22 09:48:43 来源:亿速云 阅读:78 作者:chen 本篇内容介绍了"在 JS 中怎么使用 Ajax 来进行 ...

  7. Spring.NET 中的 ADO.NET 数据访问的示例

    Spring.NET 1.3.1 中提供了一个使用 AdoTemplate 的完整示例,包括使用泛型和使用非泛型技术进行数据访问,这个示例位于下载的压缩包中\Spring.NET-1.3.1\Spri ...

  8. java中使用ajax请求数据格式化,ajax请求服务器返回json数据格式化

    JQuery--实现Ajax应用 实现Ajax应用 1   .load()异步请求数据,通过Ajax请求加载服务器中的数据,并把返回的数据放置到指定的元素中,调用格式为load(url,[data], ...

  9. 如何在js中使用ajax请求数据,在 JS 中如何使用 Ajax 来进行请求

    做者:Danny Markov 译者:前端小智 来源:tutorialzine 点赞再看,微信搜索 [大迁世界]关注这个没有大厂背景,但有着一股向上积极心态人.本文 GitHub https://gi ...

最新文章

  1. C# ASP.Net 设置外网访问
  2. es ik分词热更新MySQL,ElasticSearch(25)- 改IK分词器源码来基于mysql热更新词库
  3. 装备保障性验证知识图谱构建方法研究-学习笔记
  4. 计算机犯罪法律,计算机犯罪的构成要件
  5. android开发(4) 闪屏的实现
  6. zabbix中mysql连不上的排错_zabbix使用排错 - oschina130111的个人空间 - OSCHINA - 中文开源技术交流社区...
  7. cartographer探秘第四章之代码解析(七)--- pose_extrapolator.h 及 imu_tracker.h
  8. 程序员面试谈薪的背后的事,你一定要看看
  9. 使用Windows 7 管理Windows 2008 R2
  10. c++自底向上算符优先分析_Python语言元素之运算符
  11. 使用DroidCam过程中所遇到的问题及处理方法
  12. Vue项目中 实现ElementUi框架el-select拼音搜索功能
  13. 前端预览PDF总结:iframe、embed、PDFObject、PDF.js
  14. 基于R语言的因子分析
  15. MYSQL之数据库高级SQL语句详细操作步骤详情介绍
  16. 解决64位虚拟机安装和键盘FN快捷键问题
  17. angular复用路由组件_Angular Router的组件路由简介
  18. 专访卜茂霞:嵌入式汽车开发潜力巨大
  19. HBase进化之从NoSQL到NewSQL,凤凰涅槃成就Phoenix 1
  20. 蓝牙协议spec文档免费下载官网下载(免费)

热门文章

  1. 手把手玩转KVM虚拟化--KVM网络管理
  2. 基于LightGBM分类实现英雄联盟数据预测(一)
  3. flash player调试
  4. 性能测试工具ab和wrk
  5. librosa.effects.split
  6. Rasbian系统 树莓派Python环境搭建
  7. c语言中的fock方法输出hello,(1.1.20)C程序之Fock()函数
  8. 【状压DP】【cofun1375】麦田
  9. 【基本功】深入剖析Swift性能优化
  10. java架构设计图,不止面试题,笔记源码统统都有