HTTP完善
设置中文响应时的解析编码
//引入http核心模块 var http = require('http'); //创建一个服务 var server = http.createServer(); //绑定连接 server.on('request',function(res,rs){ if(res.method == 'POST'){ console.log('POST请求'); }else if(res.method == 'GET'){ console.log('GET请求'); } rs.setHeader('Content-type','text/plain;charset=utf8');//设置解析编码 rs.write('六日六日');//中文响应必须设置setHeader rs.end();//最后断开连接 }); //启动监听 server.listen(8081,function(){ console.log('请访问127.0.0.1:8081'); })

响应HTML页面代码
//引入http核心模块 var http = require('http'); //创建一个服务 var server = http.createServer(); //绑定连接 server.on('request',function(res,rs){ if(res.method == 'POST'){ console.log('POST请求'); }else if(res.method == 'GET'){ console.log('GET请求'); } rs.setHeader('Content-type','text/html;charset=utf8');//设置解析为HTML //rs.write('六日六日');//中文响应必须设置setHeader rs.end('<h1>六日</h1>');//相当于执行了write再end,同时识别html标签了 }); //启动监听 server.listen(8081,function(){ console.log('请访问127.0.0.1:8081'); })

通过引入一个html页面,进行服务器响应
//引入http核心模块 var http = require('http'); //引入文件读取模块fs var fs = require('fs'); //创建一个服务 var server = http.createServer(); //绑定连接 server.on('request',function(res,rs){ if(res.method == 'POST'){ console.log('POST请求'); }else if(res.method == 'GET'){ console.log('GET请求'); } rs.setHeader('Content-type','text/html;charset=utf8');//设置解析为HTML fs.readFile('./index.html','utf-8',function(err,data){ rs.end(data);//返回html代码 }) }); //启动监听 server.listen(8081,function(){ console.log('请访问127.0.0.1:8081'); })
响应一个图片,首先准备好图片:在img/01.jpg
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<img src="./img/1.jpg" alt="">
</body>
</html>
JS处调用
//引入http核心模块 var http = require('http'); //引入文件读取模块fs var fs = require('fs'); //创建一个服务 var server = http.createServer(); //绑定连接 server.on('request',function(res,rs){ var urls = res.url; if(urls == '/'){ rs.setHeader('Content-type','text/html;charset=utf-8'); fs.readFile('./01.html','utf-8',function(err,data){ rs.end(data); }) }else{ fs.readFile('.'+urls,function(err,data){ rs.end(data); }) } }); //启动监听 server.listen(8081,function(){ console.log('请访问127.0.0.1:8081'); })
服务器正常会请求三次的,第二次请求图片路径为:/img/01.jpg,所以在else处进行拼接一个.同时图片不需要进行编码处理
JSON相互转换
var arr = ['a','b','张三'] var str1 = JSON.stringify(arr); console.log(str1); console.log(typeof str1);

注意虽然输出的格式与数组相同,但是实际已经是字符串类型了
var str2 = '{"name":"purplet","age":20}'; console.log(JSON.parse(str2)); console.log(typeof JSON.parse(str2));

通过JSON.parse()转换后的是一个对象