128 lines
3.7 KiB
JavaScript
128 lines
3.7 KiB
JavaScript
// API URL
|
|
// const apiUrl = 'http://149.222.51.77/da4c59b9-43c4-4144-ae39-742c6ba3ad50/api/v1/';
|
|
const apiUrl = '/api/v1/';
|
|
|
|
//SSE URL
|
|
export const sseUrl = 'http://149.222.51.77/da4c59b9-43c4-4144-ae39-742c6ba3ad50/live';
|
|
|
|
export function fetchData(url) {
|
|
const uri = apiUrl + url;
|
|
return get(uri);
|
|
}
|
|
|
|
export function postData(url, data) {
|
|
const uri = apiUrl + url;
|
|
return post(uri, data);
|
|
}
|
|
|
|
export function putData(url, data) {
|
|
const uri = apiUrl + url;
|
|
return put(uri, data);
|
|
}
|
|
|
|
// Make a GET request
|
|
async function get(url) {
|
|
const controller = new AbortController();
|
|
const timeoutId = setTimeout(() => { alert("Verbindungsprobleme"); controller.abort(); }, 10000);
|
|
const response = await fetch(url, { signal: controller.signal });
|
|
|
|
if (response.ok) {
|
|
clearTimeout(timeoutId);
|
|
return response.json();
|
|
} else {
|
|
clearTimeout(timeoutId);
|
|
if (response.status === 400)
|
|
alert("Ungültige Anfrage");
|
|
else if (response.status === 404)
|
|
alert("Transaktion existiert nicht");
|
|
else (response.status === 500)
|
|
alert("Unerwarteter Fehler");
|
|
}
|
|
}
|
|
|
|
// Make a POST request
|
|
async function post(url, data) {
|
|
const controller = new AbortController();
|
|
const timeoutId = setTimeout(() => { alert("Verbindungsprobleme"); controller.abort(); }, 10000);
|
|
const response = await fetch(url, {
|
|
signal: controller.signal,
|
|
headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' },
|
|
method: "POST",
|
|
body: JSON.stringify(data)
|
|
});
|
|
|
|
if (response.ok) {
|
|
clearTimeout(timeoutId);
|
|
alert("Gespeichert!");
|
|
return true;
|
|
} else {
|
|
clearTimeout(timeoutId);
|
|
if (response.status === 400)
|
|
alert("Ungültige Anfrage");
|
|
else if (response.status === 422)
|
|
alert("Nicht ausführbare Anfrage");
|
|
else (response.status === 500)
|
|
alert("Unerwarteter Fehler");
|
|
|
|
return false;
|
|
}
|
|
}
|
|
|
|
// Make a PUT request
|
|
async function put(url, data) {
|
|
const controller = new AbortController();
|
|
const timeoutId = setTimeout(() => { alert("Verbindungsprobleme"); controller.abort(); }, 10000);
|
|
const response = await fetch(url, {
|
|
signal: controller.signal,
|
|
headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' },
|
|
method: "PUT",
|
|
body: JSON.stringify(data)
|
|
});
|
|
|
|
if (response.ok) {
|
|
clearTimeout(timeoutId);
|
|
alert("Gespeichert!");
|
|
return true;
|
|
} else {
|
|
clearTimeout(timeoutId);
|
|
if (response.status === 400)
|
|
alert("Ungültige Anfrage");
|
|
else if (response.status === 404)
|
|
alert("Konto existiert nicht");
|
|
else if (response.status === 422)
|
|
alert("Nicht ausführbare Anfrage");
|
|
else (response.status === 500)
|
|
alert("Unerwarteter Fehler");
|
|
|
|
return false;
|
|
}
|
|
}
|
|
|
|
// Make a DELETE request
|
|
export async function deleteData(url) {
|
|
const controller = new AbortController();
|
|
const timeoutId = setTimeout(() => { alert("Verbindungsprobleme"); controller.abort(); }, 10000);
|
|
const response = await fetch(apiUrl + url, {
|
|
signal: controller.signal,
|
|
method: "DELETE"
|
|
});
|
|
|
|
if (response.ok) {
|
|
clearTimeout(timeoutId);
|
|
alert("Gelöscht!");
|
|
return true;
|
|
} else {
|
|
clearTimeout(timeoutId);
|
|
if (response.status === 400)
|
|
alert("Ungültige Anfrage");
|
|
else if (response.status === 404)
|
|
alert("Konto existiert nicht");
|
|
else if (response.status === 422)
|
|
alert("Nicht ausführbare Anfrage");
|
|
else (response.status === 500)
|
|
alert("Unerwarteter Fehler");
|
|
|
|
return false;
|
|
}
|
|
}
|