progs/ap3.js
changeset 166 bba0504abcf0
child 531 35ffb7a7eafa
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/progs/ap3.js	Tue Sep 23 02:04:34 2014 +0100
@@ -0,0 +1,22 @@
+function mk_hash(s) {
+    return crypto.createHash('sha1').update(s).digest('hex')
+}
+
+function mk_cookie(c) {
+    return c.toString() + "-" + mk_hash(c.toString())
+}
+
+function gt_cookie(s) {
+    var splits = s.split("-", 2);
+    var counter = parseInt(splits[0])
+    if (mk_hash(counter.toString()) == splits[1]) {
+        return counter
+    } else { return 0 }
+}
+
+app.get('/', function(req, res){
+    var counter = gt_cookie(req.cookies.counter) || 0;
+    res.cookie('counter', mk_cookie(counter + 1));
+    ...
+});
+