首页 > 其他 > 详细

简单的node示例

时间:2015-11-22 02:09:12      阅读:309      评论:0      收藏:0      [点我收藏+]

var http=require("http");

var url=require("url");

var onRequest=function(request,response){

var pathname=url.parse(request.url).pathname;

if (pathname=="/"||pathname=="/start"){

response.writeHead(200,{"content-Type":"text/plain"});

response.write("hello world");

response.end();

}else if (pathname=="/upload"){

response.writeHead(200,{"content-Type":"text/plain"});

response.write("hello upload");

response.end();

}else{

console.log("the response for "+pathname+"is not found")

};

console.log("Server running at http://localhost:8888")

}

http.createServer(onRequest).listen(8888);

?

?

模块化后:

//server.js

var http=require("http");

var url=require("url");

function start(route,handle){

function onRequest(request,response){

var pathname=url.parse(request.url).pathname;

route(handle,pathname,response);

}

var server=http.createServer(onRequest);

server.on(‘listening‘,function(){

? ?console.log(‘ok, server is running‘);

});

server.listen(50);

console.log("Server running at http://localhost:50")

}

exports.start=start;

?

//router.js

function route(handle,pathname,response){

if (typeof handle[pathname] == ‘function‘ ){

handle[pathname](response);

}else{

console.log("No request handle found for"+pathname);

response.writeHead(404,{"content-Type":"text/plain"});

response.end();

}

};

exports.route=route;

?

//requestHandler.js

function start(response){

response.writeHead(200,{"content-Type":"text/plain"});

response.write("hello world111");

response.end();

};

function upload(response){

response.writeHead(200,{"content-Type":"text/plain"});

response.write("hello upload1111");

response.end();

};

exports.start=start;

exports.upload=upload

?

//index.js

var server=require("./server");

var router=require("./router");

var requestHandlers=require("./requestHandlers");

var handle={};

handle["/"]=requestHandlers.start;

handle["/start"]=requestHandlers.start;

handle["/upload"]=requestHandlers.upload;

server.start(router.route,handle)

简单的node示例

原文:http://schifred.iteye.com/blog/2258275

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!