aboutsummaryrefslogtreecommitdiff
path: root/wikijscmd/custom_requests.py
diff options
context:
space:
mode:
Diffstat (limited to 'wikijscmd/custom_requests.py')
-rw-r--r--wikijscmd/custom_requests.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/wikijscmd/custom_requests.py b/wikijscmd/custom_requests.py
new file mode 100644
index 0000000..bc9b16e
--- /dev/null
+++ b/wikijscmd/custom_requests.py
@@ -0,0 +1,30 @@
+import requests
+import sys
+import json
+from wikijscmd.config import config
+
+def handle_errors(r):
+ error = False
+ if r.status_code != 200:
+ error = True
+ print("Error status code: %s" % r.status_code)
+ json = r.json()
+ if "errors" in json:
+ error = True
+ for e in json["errors"]:
+ print(e["message"])
+ print(e)
+ if error:
+ sys.exit(1)
+
+
+def get_headers():
+ return { "Authorization": "Bearer %s" % config["wiki"]["key"] }
+
+def send_query(query, query_vars):
+ '''Returns status code, json'''
+ payload = { "query": query, "variables": query_vars}
+ r = requests.post(config["wiki"]["url"], json=payload, headers = get_headers())
+ handle_errors(r)
+ return r.json()
+