diff --git a/lib/server.js b/lib/server.js index b11da10..36c553d 100644 --- a/lib/server.js +++ b/lib/server.js @@ -224,14 +224,21 @@ PeerServer.prototype._initializeHTTP = function() { var handle = function(req, res) { var key = req.params.key; var id = req.params.id; - if (!self._clients[key]) { - // Retry this request - res.send(202); + + var client; + if (!self._clients[key] || !(client = self._clients[key][id])) { + if (req.params.retry) { + res.send(401); + } else { + // Retry this request + req.params.retry = true; + setTimeout(handle, 25, req, res); + } return; } - var client = self._clients[key][id]; + // Auth the req - if (!client || req.params.token !== client.token) { + if (req.params.token !== client.token) { res.send(401); return; } else { diff --git a/package.json b/package.json index 241cec2..8a36e88 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "peer", - "version": "0.1.3", + "version": "0.1.4", "description": "Peer-to-peer data in browsers", "main": "lib/server.js", "repository": {