UNPKG

backend-integration-fetch

Version:

The Backend-Api-Integration package simplifies interaction with the backend API by providing a set of CRUD methods for common endpoints. It abstracts away the complexity of making HTTP requests and handling responses, allowing developers to focus on appli

84 lines (68 loc) 1.97 kB
export async function fetchHelper( endpoint, method, accessToken = null, khID = null, body = null, options = null, SERVER_URL ) { try { var url = SERVER_URL + endpoint; if (options) { const queryParams = new URLSearchParams(options); url = url + `?${queryParams.toString()}`; } var requestObject = { method: method, headers: { 'Content-Type': 'application/json', } } if (accessToken) { requestObject.headers.Authorization = 'Bearer ' + accessToken; } if (khID) { requestObject.headers.khID = khID; } if (body) { requestObject.body = JSON.stringify(body); } const response = await fetch(url, requestObject); const responseJson = await response.json(); if (response.ok) return responseJson; var errorMessage = "Server error:" + response.status + " Message: " + responseJson.message; return Promise.reject(errorMessage); } catch (e) { return Promise.reject(e.message); } } export async function UploadFile(method, body, headers, SERVER_URL) { try { var url = SERVER_URL; var requestObject = { method: method, headers: headers, }; if (body) { requestObject.body = body; } const response = await fetch(url, requestObject); if (response.ok) { return response; } var errorMessage = "Server error:" + response.status + " Message: " + response.statusText; return Promise.reject(errorMessage); } catch (e) { return Promise.reject(e.message); } }