mirror of
https://github.com/tobspr/shapez.io.git
synced 2024-10-27 20:34:29 +00:00
Using reject here is uncaught, make this a single promise and resolve/reject accordingly (#556)
This commit is contained in:
parent
90cf65e21e
commit
779ba8a1b8
@ -85,10 +85,9 @@ export class ShapezGameAnalytics extends GameAnalyticsInterface {
|
||||
* @returns {Promise<any>}
|
||||
*/
|
||||
sendToApi(endpoint, data) {
|
||||
return Promise.race([
|
||||
new Promise((resolve, reject) => {
|
||||
setTimeout(() => reject("Request to " + endpoint + " timed out"), 20000);
|
||||
}),
|
||||
return new Promise((resolve, reject) => {
|
||||
const timeout = setTimeout(() => reject("Request to " + endpoint + " timed out"), 20000);
|
||||
|
||||
fetch(analyticsUrl + endpoint, {
|
||||
method: "POST",
|
||||
mode: "cors",
|
||||
@ -103,13 +102,19 @@ export class ShapezGameAnalytics extends GameAnalyticsInterface {
|
||||
body: JSON.stringify(data),
|
||||
})
|
||||
.then(res => {
|
||||
clearTimeout(timeout);
|
||||
if (!res.ok || res.status !== 200) {
|
||||
throw new Error("Fetch error: Bad status " + res.status);
|
||||
reject("Fetch error: Bad status " + res.status);
|
||||
} else {
|
||||
return res.json();
|
||||
}
|
||||
return res;
|
||||
})
|
||||
.then(res => res.json()),
|
||||
]);
|
||||
.then(resolve)
|
||||
.catch(reason => {
|
||||
clearTimeout(timeout);
|
||||
reject(reason);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user