Added random keys

This commit is contained in:
John Crepezzi 2011-11-18 16:45:48 -05:00
parent f935ac56c2
commit cf384cd0fd
1 changed files with 13 additions and 2 deletions

View File

@ -9,6 +9,7 @@ var DocumentHandler = function() {
// TODO implement with FS backend // TODO implement with FS backend
DocumentHandler.documents = {}; DocumentHandler.documents = {};
// Handle retrieving a document
DocumentHandler.prototype.handleGet = function(key, response) { DocumentHandler.prototype.handleGet = function(key, response) {
if (DocumentHandler.documents[key]) { if (DocumentHandler.documents[key]) {
winston.verbose('retrieved document', { key: key }); winston.verbose('retrieved document', { key: key });
@ -22,8 +23,9 @@ DocumentHandler.prototype.handleGet = function(key, response) {
} }
}; };
// Handle adding a new Document
DocumentHandler.prototype.handlePost = function(request, response) { DocumentHandler.prototype.handlePost = function(request, response) {
var key = '123'; var key = this.randomKey();
request.on('data', function(data) { request.on('data', function(data) {
if (!DocumentHandler.documents[key]) { if (!DocumentHandler.documents[key]) {
response.writeHead(200, { 'content-type': 'application/json' }); response.writeHead(200, { 'content-type': 'application/json' });
@ -42,6 +44,15 @@ DocumentHandler.prototype.handlePost = function(request, response) {
}); });
}; };
// TODO block modifying // Generate a random key
// TODO make length configurable
DocumentHandler.prototype.randomKey = function() {
var text = '';
var keyspace = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
for (var i = 0; i < 6; i++) {
text += keyspace.charAt(Math.floor(Math.random() * keyspace.length));
}
return text;
};
module.exports = DocumentHandler; module.exports = DocumentHandler;