aboutsummaryrefslogtreecommitdiff
path: root/api/static/js/api.js
diff options
context:
space:
mode:
Diffstat (limited to 'api/static/js/api.js')
-rw-r--r--api/static/js/api.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/api/static/js/api.js b/api/static/js/api.js
new file mode 100644
index 0000000..243edf7
--- /dev/null
+++ b/api/static/js/api.js
@@ -0,0 +1,26 @@
+// Description: This file contains functions to access the API with JWT authentication.
+
+/**
+ * Accept an API endpoint, method, and body to send to the API.
+ * - If successful, return the response
+ * - If not, return false
+ * @param {*} endpoint API endpoint
+ * @param {*} method String (GET, POST, PUT, DELETE)
+ * @param {*} body Data to send to the API
+ * @returns response.json or false
+ */
+async function accessAPI(endpoint, method, body) {
+ let response = await fetch(`/api${endpoint}`, {
+ method: method,
+ body: body,
+ });
+
+ if (response.ok) {
+ let data = await response.json();
+ data = await data;
+ return data;
+
+ }
+
+ return false;
+} \ No newline at end of file