fix xhr race condition
This commit is contained in:
parent
c76064301f
commit
d5f72731ab
@ -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 {
|
||||
|
@ -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": {
|
||||
|
Loading…
x
Reference in New Issue
Block a user