mirror of
https://github.com/hrfee/jfa-go.git
synced 2024-12-22 09:00:10 +00:00
web: fix intermittent "coudln't connect" on page load
was caused by language selector loader, simply added a "noConnectionError" param to the _get/_post... methods which is enabled for it.
This commit is contained in:
parent
51e3c37694
commit
a9dc601751
@ -21,7 +21,7 @@ export function toDateString(date: Date): string {
|
|||||||
return date.toLocaleDateString(locale, args1) + " " + date.toLocaleString(locale, args2);
|
return date.toLocaleDateString(locale, args1) + " " + date.toLocaleString(locale, args2);
|
||||||
}
|
}
|
||||||
|
|
||||||
export const _get = (url: string, data: Object, onreadystatechange: (req: XMLHttpRequest) => void): void => {
|
export const _get = (url: string, data: Object, onreadystatechange: (req: XMLHttpRequest) => void, noConnectionError: boolean = false): void => {
|
||||||
let req = new XMLHttpRequest();
|
let req = new XMLHttpRequest();
|
||||||
if (window.URLBase) { url = window.URLBase + url; }
|
if (window.URLBase) { url = window.URLBase + url; }
|
||||||
req.open("GET", url, true);
|
req.open("GET", url, true);
|
||||||
@ -30,7 +30,7 @@ export const _get = (url: string, data: Object, onreadystatechange: (req: XMLHtt
|
|||||||
req.setRequestHeader('Content-Type', 'application/json; charset=UTF-8');
|
req.setRequestHeader('Content-Type', 'application/json; charset=UTF-8');
|
||||||
req.onreadystatechange = () => {
|
req.onreadystatechange = () => {
|
||||||
if (req.status == 0) {
|
if (req.status == 0) {
|
||||||
window.notifications.connectionError();
|
if (!noConnectionError) window.notifications.connectionError();
|
||||||
return;
|
return;
|
||||||
} else if (req.status == 401) {
|
} else if (req.status == 401) {
|
||||||
window.notifications.customError("401Error", window.lang.notif("error401Unauthorized"));
|
window.notifications.customError("401Error", window.lang.notif("error401Unauthorized"));
|
||||||
@ -65,7 +65,7 @@ export const _upload = (url: string, formData: FormData): void => {
|
|||||||
req.send(formData);
|
req.send(formData);
|
||||||
};
|
};
|
||||||
|
|
||||||
export const _post = (url: string, data: Object, onreadystatechange: (req: XMLHttpRequest) => void, response?: boolean, statusHandler?: (req: XMLHttpRequest) => void): void => {
|
export const _post = (url: string, data: Object, onreadystatechange: (req: XMLHttpRequest) => void, response?: boolean, statusHandler?: (req: XMLHttpRequest) => void, noConnectionError: boolean = false): void => {
|
||||||
let req = new XMLHttpRequest();
|
let req = new XMLHttpRequest();
|
||||||
req.open("POST", window.URLBase + url, true);
|
req.open("POST", window.URLBase + url, true);
|
||||||
if (response) {
|
if (response) {
|
||||||
@ -76,7 +76,7 @@ export const _post = (url: string, data: Object, onreadystatechange: (req: XMLHt
|
|||||||
req.onreadystatechange = () => {
|
req.onreadystatechange = () => {
|
||||||
if (statusHandler) { statusHandler(req); }
|
if (statusHandler) { statusHandler(req); }
|
||||||
else if (req.status == 0) {
|
else if (req.status == 0) {
|
||||||
window.notifications.connectionError();
|
if (!noConnectionError) window.notifications.connectionError();
|
||||||
return;
|
return;
|
||||||
} else if (req.status == 401) {
|
} else if (req.status == 401) {
|
||||||
window.notifications.customError("401Error", window.lang.notif("error401Unauthorized"));
|
window.notifications.customError("401Error", window.lang.notif("error401Unauthorized"));
|
||||||
@ -86,14 +86,14 @@ export const _post = (url: string, data: Object, onreadystatechange: (req: XMLHt
|
|||||||
req.send(JSON.stringify(data));
|
req.send(JSON.stringify(data));
|
||||||
};
|
};
|
||||||
|
|
||||||
export function _delete(url: string, data: Object, onreadystatechange: (req: XMLHttpRequest) => void): void {
|
export function _delete(url: string, data: Object, onreadystatechange: (req: XMLHttpRequest) => void, noConnectionError: boolean = false): void {
|
||||||
let req = new XMLHttpRequest();
|
let req = new XMLHttpRequest();
|
||||||
req.open("DELETE", window.URLBase + url, true);
|
req.open("DELETE", window.URLBase + url, true);
|
||||||
req.setRequestHeader("Authorization", "Bearer " + window.token);
|
req.setRequestHeader("Authorization", "Bearer " + window.token);
|
||||||
req.setRequestHeader('Content-Type', 'application/json; charset=UTF-8');
|
req.setRequestHeader('Content-Type', 'application/json; charset=UTF-8');
|
||||||
req.onreadystatechange = () => {
|
req.onreadystatechange = () => {
|
||||||
if (req.status == 0) {
|
if (req.status == 0) {
|
||||||
window.notifications.connectionError();
|
if (!noConnectionError) window.notifications.connectionError();
|
||||||
return;
|
return;
|
||||||
} else if (req.status == 401) {
|
} else if (req.status == 401) {
|
||||||
window.notifications.customError("401Error", window.lang.notif("error401Unauthorized"));
|
window.notifications.customError("401Error", window.lang.notif("error401Unauthorized"));
|
||||||
|
@ -88,5 +88,5 @@ export const loadLangSelector = (page: string) => {
|
|||||||
}
|
}
|
||||||
list.innerHTML = innerHTML;
|
list.innerHTML = innerHTML;
|
||||||
}
|
}
|
||||||
});
|
}, true);
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user