复制代码代码如下:
var memcache = require('memcache')
,http = require('http')
,url = require('url')
,qs = require('querystring')
,memsettings = {端口:2000,主机:'10 .6.0.6'}
,httpsettings = {port:3000}
,cacheObject = {}
,httpserver
, 客户
,请求Handler;
client = new memcache.client(memsettings.port,memsettings.host);
// ...
client.on('connect',function(){
client.connected = true;
});
client.on('close',function(){
//没有参数 - 连接已关闭
client.connected = false;
});
功能getData(键,包装器,res){
client.get(键,函数(错误,结果){
//所有回调都有两个参数。
//'结果'可能包含不好的东西,但是
//并不是真正的错误,例如“ not_stored”
如果(!error){
如果(结果){
cacheObject [key] =结果;
res.write(包装器 +'(' + result +')');
} 别的 {
res.write('无数据');
}
res.end();
}
});
/*if(cacheobject [key]){
response.write(cacheObject [key]);
响应。End();
} 别的 {
client.get(键,函数(错误,结果){
//所有回调都有两个参数。
//'结果'可能包含不好的东西,但是
//并不是真正的错误,例如“ not_stored”
如果(!error){
cacheObject [key] =结果;
cacheObject [key] ['timeOutId'] = settimeout(function(){
client.get(键,函数(错误,结果){
如果(!error){
cacheObject [key] =结果;
}
});
});
wress.write(结果);
响应。End();
}
});
}*/
}
httpserver = http.createserver(function(req,res){
var urlobj,queryObj;
urlobj = url.parse(req.url);
res.writehead(200,{“ content-type”:“ text/javaScript; charset = utf-8“}));
queryObj = qs.parse(urlobj.query);
路径= queryObj.PathName;
如果(queryObj.gid){
getData(queryObj.gid,queryObj.callback ||'callback',res);
} 别的 {
res.write('否输入');
res.end();
}
/*
switch(urlobj.pathname){
案例“/pai”:
res.write(urlobj.pathname);
休息;
案例“/Qiang”:
res.write(urlobj.pathname);
休息;
默认:
res.write('default');
休息;
}
res.end();
*/
});
client.connect();
httpserver.listen(httpsettings.port);
console.log('HTTP服务器在' + httpsettings.port上侦听);