From bb989c5422923dee0b520af841711624c3b60cdd Mon Sep 17 00:00:00 2001 From: Ava Gaiety Wroten Date: Tue, 24 Dec 2019 17:36:00 -0600 Subject: [PATCH] Added requests caching on backend to hit the meals db less --- python-api/README.md | 2 +- python-api/__pycache__/api.cpython-37.pyc | Bin 2988 -> 3039 bytes python-api/api.py | 3 +++ python-api/cache.sqlite | Bin 0 -> 32768 bytes python-api/meals_cache.sqlite | Bin 0 -> 24576 bytes 5 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 python-api/cache.sqlite create mode 100644 python-api/meals_cache.sqlite diff --git a/python-api/README.md b/python-api/README.md index c4fad9d..193a119 100644 --- a/python-api/README.md +++ b/python-api/README.md @@ -3,7 +3,7 @@ ## Getting Started ```bash -pip3 install requests gunicorn pycnic +pip3 install requests requests-cache gunicorn pycnic gunicorn api:app ``` diff --git a/python-api/__pycache__/api.cpython-37.pyc b/python-api/__pycache__/api.cpython-37.pyc index a0d6cc58c912ec79b087f110dcbfcea3df7c2bf4..3fa00a2ef5dd9017328956d8cb60d6f6a2bd70b2 100644 GIT binary patch delta 264 zcmZ1@eqWr|iI7rDV#t)Cz#I-J~=TtBeh5k oC>O<>nO9trn3Dq$o1DyTE+zyN7hvRJ0S*Cn0N}zud;kCd delta 213 zcmcaFzDAtaiIlWMgQb&E zW3vj9!zOxV#uWC;M{U5eoo1s+bK( va4@nlaWEF?0GXQHlkK_nS&P(w?8%e3&4u`Y3;{+SMh->}CIM>!4gq!mHheBF diff --git a/python-api/api.py b/python-api/api.py index ee76dbe..37813b6 100644 --- a/python-api/api.py +++ b/python-api/api.py @@ -1,8 +1,11 @@ from pycnic.core import WSGI, Handler from key_replacer import KeyReplacer import requests +import requests_cache import json +requests_cache.install_cache() + class Base(Handler): hostname = "https://www.themealdb.com/api/json/v1/1/" diff --git a/python-api/cache.sqlite b/python-api/cache.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..15e6b47f3b2fb7764a9ccfc05bbb2443ba45497a GIT binary patch literal 32768 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 Jdkk+o{s&-A*F^vT literal 0 HcmV?d00001 diff --git a/python-api/meals_cache.sqlite b/python-api/meals_cache.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..8413dfd109c5d62d31056f55666ce40cbb7d1dfa GIT binary patch literal 24576 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 bv9mAUy|-igqmRH}ZiBzh!ryA}_vk+XkgvBy literal 0 HcmV?d00001