form

来源:互联网 发布:sql over partition by 编辑:程序博客网 时间:2024/05/17 01:26
var http = require('http');var items = [];var util = require('util');var server = http.createServer(function(req, res) {if (req.url == '/') {switch (req.method) {case 'GET':show(res);break;case 'POST':action(req, res);break;default:badRequest(res);}} else {notFound(res);}});server.listen(3000);function show(res) {var html = '<html><head><title>Todo List</title></head><body>'+ '<h1>Todo List</h1>'+ '<ul>'+ items.map(function(item) {return '<li>' + item + '</li>';}).join('')+ '</ul>'+ '<form method="post" action="/">'+ '<p><input type="text" name="item"/></p>'+ '<p><input type="submit" value="Add Item" name="test"/><input type="submit" value="Del Item" name="test"></p>'+ '</form></body></html>';res.setHeader('Content-Type', 'text/html');res.setHeader('Content-Length', Buffer.byteLength(html));res.end(html);}function notFound(res) {res.statusCode = 404;res.setHeader('Content-Type', 'text/plain');res.end('Not Found');}function badRequest(res) {res.statusCode = 400;res.setHeader('Content-Type', 'text/plain');res.end('Bad Request');}var qs = require('querystring');function action(req, res) {var body = '';req.setEncoding('utf8');req.on('data', function(chunk) {body += chunk});req.on('end', function() {var obj = qs.parse(body);switch (obj.test) {case 'Add Item':items.push(obj.item);break;case 'Del Item':for (var i in items) {if (items[i] == obj.item) {items.splice(i, 1);break;}}break;}show(res);});}

0 0
原创粉丝点击