服务端javascript
javascript是运行在浏览器中的一门脚本语言,然后浏览器提供了一个上下文供javascript解释执行。
nodejs实际上就是允许javascript脱离浏览器在后端解释执行。
分析http服务器
require('http').createServer(函数传递).listen(9999)
函数传递进去的就是http服务器接受http请求时的事件驱动,问题是,这是异步的,请求任何时候都能到达,但是我们的服务确跑在一个单线程中。
var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8888);
http服务是如何处理请求的
通过函数传递,向createServer函数中传入一个匿名函数来处理请求,当收到请求时,使用
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
如何来进行请求的“路由”
根据请求url和其他的get和post参数,处理相应的代码。
通过扩展index.js,使得路由函数可以被注入到服务器中: