史上最小的web服务,却蕴含万千

1分钟洞察web服务器所有核心要素

前提:安装nodejs
https://nodejs.org/en/

node-server.js

下面的代码是node的语法,这个无需练习,体验下即可,它已经涉及到web前端工程师的范畴。后端工程师会启动环境进行测试即可。
任意目录下执行node-server.js:

var http = require('http');
var url = require('url');
var path = require('path');

//创建server
var server = http.createServer(function(req, res){
	//获得请求路径
	var pathname = url.parse(req.url).pathname;
	res.writeHead(200, {'Content-Type':'application/json; charset=utf-8'});
	if(pathname === '/'){
		res.end(JSON.stringify({ "index":"欢迎" }));
	}else if(pathname === '/health.json'){
		res.end(JSON.stringify({ "status":"UP" }));
	}else{
		res.end("404");
	}
});

//创建监听,并打印日志
server.listen(8060, function(){
	console.log('listening on localhost:8060');
});

注意:开发的Node.js应用,必须去实现一个健康检查接口,将来可以轻松和SpringCloud微服务架构进行整合,来让Sidecar可以把这个服务实例的健康状况报告给Eureka。

收获

这里不需要你记住上面的代码,但大概的意思,包括关键的语句需要你心中有数,因为它虽然看着很简陋,可后面庞大的web程序的核心都在这个小案例中。
 http协议,url网页链接,path网页路径;
 createServer创建一个web server对象,传递两个重量级参数,req:request缩写,表示请求,res:response缩写,表示响应。这是http最核心的两个概念,以后我们写web程序成天需要和它打交道;
 parse解析,从url路径中剥离出我们需要的路径;
 req.writeHead请求头,我们浏览器除了写一个网页地址,还有很多附加内容,其中请求头有时也叫头信息,就是非常常用的;
 Content-Type 网页请求类型,最常用的就是application/json;
 中文乱码,必须设置charset=utf8字符集;
 res.end 设置要返回的内容;
 JSON.stringify 将js对象转化成字符串;
 / 网站根路径,欢迎页面;
 其它不存在路径,返回404错误;
 listen侦听;
 8060服务端口;

你可能感兴趣的:(front-end,大前端,前端)