为什么在加载start和upload的时候任然会阻塞?该如何解决?
完整代码
1.requestHandles.js
function start(response){
console.log("start has been request");
function sleep(mis){
var start = new Date().getTime();
while(new Date().getTime()-start<mis)
{}
}
sleep(10000);
response.writeHead(200,{"Content-Type":"text/plain"});
response.write("hello this is start");
response.end();
}
function upload(response){
console.log("upload has been request");
response.writeHead(200,{"Content-Type":"text/plain"});
response.write("hello upload");
response.end();
}
exports.start = start;
exports.upload = upload;
2.server.js
var http = require("http");
var url = require("url");
function start(route,handles){
function onRequest(request,response){
var pathname = url.parse(request.url).pathname;
route(pathname,handles,response);
}
http.createServer(onRequest).listen(8080);
console.log("server has been work");
}
exports.start = start;
3.router.js
function route(pathname,handles,response){
console.log(pathname+" has been request!");
if(typeof handles[pathname] == "function"){
handles[pathname](response);
}
else{
console.log("404");
}
}
exports.route = route;
index.js
var server = require("./server");
var router = require("./router");
var requestHandles = require("./requestHandles");
var handles = [];
handles["/"] = requestHandles.start;
handles["/start"] = requestHandles.start;
handles["/upload"] = requestHandles.upload;
server.start(router.route,handles);
跟帖
暂无
说几句