复制代码代码如下::
var memcache = require ('memcache')
, http = required ('http')
, url = erfordern ('url')
, QS = Request ('QueryString')
, memsetings = {port: 2000, host: '10 .6.0.6 '}
httpettings = {port: 3000}
, cacheObject = {}
, httpserver
, Kunde
, RequestHandler;
client = new memcache.client (memsetings.port, memsetings.host);
// ...
client.on ('connect', function () {
client.connected = true;
});
client.on ('close', function () {
// Keine Argumente - Die Verbindung wurde geschlossen
client.connected = false;
});
Funktion getData (Schlüssel, Wrapper, res) {
Client.get (Schlüssel, Funktion (Fehler, Ergebnis) {
// Alle Rückrufe haben zwei Argumente.
// 'Ergebnis' kann Dinge enthalten, die nicht großartig sind, aber
// sind nicht wirklich Fehler, wie 'Not_Stored'
if (! Fehler) {
if (Ergebnis) {
CacheObject [Schlüssel] = Ergebnis;
res.write (Wrapper + '(' + result + ')');
} anders {
res.write ('no data');
}
res.end ();
}
});
/*if (cacheObject [Schlüssel]) {
Antwort.Write (CacheObject [Schlüssel]);
Antwort.end ();
} anders {
Client.get (Schlüssel, Funktion (Fehler, Ergebnis) {
// Alle Rückrufe haben zwei Argumente.
// 'Ergebnis' kann Dinge enthalten, die nicht großartig sind, aber
// sind nicht wirklich Fehler, wie 'Not_Stored'
if (! Fehler) {
CacheObject [Schlüssel] = Ergebnis;
cacheObject [key] ['timeoutID'] = setTimeout (function () {
Client.get (Schlüssel, Funktion (Fehler, Ergebnis) {
if (! Fehler) {
CacheObject [Schlüssel] = Ergebnis;
}
});
});
Antwort.Write (Ergebnis);
Antwort.end ();
}
});
}*/
}
httpserver = http.createServer (Funktion (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);
path = queryObj.PathName;
if (queryobj.gid) {
getData (queryObj.gid, queryObj.callback || 'callback', res);
} anders {
res.write ('keine Eingabe');
res.end ();
}
/*
Switch (urlobj.PathName) {
Fall '/pai':
Res.Write (Urlobj.PathName);
brechen;
Fall '/Qiang':
Res.Write (Urlobj.PathName);
brechen;
Standard:
Res.Write ('Standard');
brechen;
}
res.end ();
*/
});
Client.Connect ();
httpserver.listen (httpettings.port);
console.log ('http server hörend' + httpettings.port);