HTTP
事件绑定:on
let http = require("http");
//创建服务
let server = http.createServer((req,res)=>{
res.writeHead(200,{"content-type":"text/html;charset=utf-8"})
res.write("<h1>hello 浏览器 666 888 ~</h1>");
res.end();
});
server.listen(3000);
安装nodemon:
监听文件变化,如果文件变化,会自动重启服务器
npm i nodemon -g 全局安装
运行:
nodemon 12-系统模块之http模块.js
url及querystring
let http = require("http");
let url = require("url"); // url.parse()
let qs = require("querystring"); // 解析查询字符串
http.createServer((req, res) => {
// console.log(req.url); // / /shop /list
let urlObj = url.parse(req.url);
// console.log(urlObj)
// 解析查询字符串 urlObj.query
let qObj = qs.parse(urlObj.query); // 解析查询字符串
// console.log(qObj); // { a: '123' } qObj.a
let data = "";
switch (urlObj.pathname) {
case "/":
data = "<h1>首页面</h1>";
break;
case "/shop":
data = "<h1>购物车页面</h1>";
break;
case "/order":
data = `<h1>订单页面,名字是${qObj.name}</h1>`;
break;
default:
data = "你的页面飞了~"
}
res.writeHead(200, { "content-type": "text/html;charset=utf-8" });
res.write(data);
res.end();
}).listen(3000, () => {
console.log("服务器在3000端口启动了~")
})
利用Url模块解析url得到一个对象,如下:
Url {
protocol: null, // 协议
slashes: null,
auth: null, // 身份校验
host: null, // 域名(主机)
port: null, // 端口
hostname: null, // 主机名
hash: null, // hash值
search: null, // 查询字符串 多了一个?
query: null, // 查询字符串
pathname: '/', // 路径名
path: '/', // 路径
href: '/'
}
注意:使用node前需要安装插件code runer