Introduction
Introduction Statistics Contact Development Disclaimer Help
More extensive request logging - toot - Unnamed repository; edit this file 'des…
Log
Files
Refs
LICENSE
---
commit ed20c7fded6ba5dfb7124bf223d9bf9b3e213ab3
parent c3bafd56d82823a803a8abd040daf4f7d0f8aa8b
Author: Ivan Habunek <[email protected]>
Date: Mon, 17 Apr 2017 11:10:57 +0200
More extensive request logging
Diffstat:
toot/api.py | 62 ++++++++++++++++++++-----------
1 file changed, 40 insertions(+), 22 deletions(-)
---
diff --git a/toot/api.py b/toot/api.py
@@ -20,12 +20,19 @@ class NotFoundError(ApiError):
pass
-def _log_request(request, prepared_request):
+def _log_request(request):
logger.debug(">>> \033[32m{} {}\033[0m".format(request.method, request.url…
- logger.debug(">>> DATA: \033[33m{}\033[0m".format(request.data))
- logger.debug(">>> FILES: \033[33m{}\033[0m".format(request.files))
logger.debug(">>> HEADERS: \033[33m{}\033[0m".format(request.headers))
+ if request.data:
+ logger.debug(">>> DATA: \033[33m{}\033[0m".format(request.data))
+
+ if request.files:
+ logger.debug(">>> FILES: \033[33m{}\033[0m".format(request.files))
+
+ if request.params:
+ logger.debug(">>> PARAMS: \033[33m{}\033[0m".format(request.params))
+
def _log_response(response):
if response.ok:
@@ -36,14 +43,34 @@ def _log_response(response):
logger.debug("<<< \033[31m{}\033[0m".format(response.content))
+def _process_response(response):
+ _log_response(response)
+
+ if not response.ok:
+ try:
+ error = response.json()['error']
+ except:
+ error = "Unknown error"
+
+ if response.status_code == 404:
+ raise NotFoundError(error)
+
+ raise ApiError(error)
+
+ response.raise_for_status()
+
+ return response.json()
+
+
def _get(app, user, url, params=None):
url = app.base_url + url
headers = {"Authorization": "Bearer " + user.access_token}
+ _log_request(Request('GET', url, headers, params=params))
+
response = requests.get(url, params, headers=headers)
- response.raise_for_status()
- return response.json()
+ return _process_response(response)
def _post(app, user, url, data=None, files=None):
@@ -54,26 +81,11 @@ def _post(app, user, url, data=None, files=None):
request = Request('POST', url, headers, files, data)
prepared_request = request.prepare()
- _log_request(request, prepared_request)
+ _log_request(request)
response = session.send(prepared_request)
- _log_response(response)
-
- if not response.ok:
- try:
- error = response.json()['error']
- except:
- error = "Unknown error"
-
- if response.status_code == 404:
- raise NotFoundError(error)
-
- raise ApiError(error)
-
- response.raise_for_status()
-
- return response.json()
+ return _process_response(response)
def create_app(base_url):
@@ -140,6 +152,12 @@ def search(app, user, query, resolve):
})
+def search_accounts(app, user, query):
+ return _get(app, user, '/api/v1/accounts/search', {
+ 'q': query,
+ })
+
+
def follow(app, user, account):
url = '/api/v1/accounts/%d/follow' % account
You are viewing proxied material from vernunftzentrum.de. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.