mirror of
https://github.com/Xahau/xahau.js.git
synced 2025-12-05 08:48:14 +00:00
resend request in case server was disconnected after request was sent
This commit is contained in:
@@ -207,7 +207,12 @@ Request.prototype.callback = function(callback, successEvent, errorEvent) {
|
|||||||
|
|
||||||
let called = false;
|
let called = false;
|
||||||
|
|
||||||
|
function onReconnect() {
|
||||||
|
self.remote.request(self);
|
||||||
|
}
|
||||||
|
|
||||||
function requestSuccess(message) {
|
function requestSuccess(message) {
|
||||||
|
self.remote.removeListener('connected', onReconnect);
|
||||||
if (!called) {
|
if (!called) {
|
||||||
called = true;
|
called = true;
|
||||||
callback.call(self, null, message);
|
callback.call(self, null, message);
|
||||||
@@ -215,6 +220,7 @@ Request.prototype.callback = function(callback, successEvent, errorEvent) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function requestError(error) {
|
function requestError(error) {
|
||||||
|
self.remote.removeListener('connected', onReconnect);
|
||||||
if (!called) {
|
if (!called) {
|
||||||
called = true;
|
called = true;
|
||||||
|
|
||||||
@@ -228,6 +234,9 @@ Request.prototype.callback = function(callback, successEvent, errorEvent) {
|
|||||||
|
|
||||||
this.once(this.successEvent, requestSuccess);
|
this.once(this.successEvent, requestSuccess);
|
||||||
this.once(this.errorEvent, requestError);
|
this.once(this.errorEvent, requestError);
|
||||||
|
if (this.remote.isConnected()) {
|
||||||
|
this.remote.once('connected', onReconnect);
|
||||||
|
}
|
||||||
this.request();
|
this.request();
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
|
|||||||
Reference in New Issue
Block a user