diff --git a/app/services/tcgplayer_api.py b/app/services/tcgplayer_api.py index 10087f9..c0bf9cf 100644 --- a/app/services/tcgplayer_api.py +++ b/app/services/tcgplayer_api.py @@ -11,6 +11,7 @@ from jinja2 import Environment, FileSystemLoader from weasyprint import HTML import json import time +import re logger = logging.getLogger(__name__) @@ -240,8 +241,11 @@ class TCGPlayerAPIService: response = self.requests_util.send_request(url, method='POST', cookies=self.cookies, json=payload) if response: # get filename from response headers - filename = response.headers.get('Content-Disposition').split('filename=')[1].strip('"') + header = response.headers.get('Content-Disposition', '') + match = re.search(r'filename="?([^";]+)"?', header) + filename = match.group(1) if match else f'packingslip{datetime.now().strftime("%Y%m%d_%H%M%S")}.pdf' output_filename = f'/app/tmp/{filename}' + # save file to disk with open(output_filename, 'wb') as f: f.write(response.content) @@ -257,7 +261,9 @@ class TCGPlayerAPIService: response = self.requests_util.send_request(url, method='POST', cookies=self.cookies, json=payload) if response: # get filename from response headers - filename = response.headers.get('Content-Disposition').split('filename=')[1].strip('"') + header = response.headers.get('Content-Disposition', '') + match = re.search(r'filename="?([^";]+)"?', header) + filename = match.group(1) if match else f'packingslip{datetime.now().strftime("%Y%m%d_%H%M%S")}.pdf' output_filename = f'/app/tmp/{filename}' # save file to disk with open(output_filename, 'wb') as f: diff --git a/requests.md b/requests.md index c93129b..255a6e3 100644 --- a/requests.md +++ b/requests.md @@ -18,4 +18,8 @@ curl -X POST "http://192.168.1.41:8000/api/boxes/d95d26a8-1f82-47f2-89fa-3f88a46 curl -X POST "http://192.168.1.41:8000/api/processOrders" \ -H "Content-Type: application/json" \ - -d '{"order_ids": ["E576ED4C-2EC48E-7F185"]}' + -d '{"order_ids": ["E576ED4C-EBD55A-27AE6","E576ED4C-CC32F2-76408"]}' + +curl -X POST "http://192.168.1.41:8000/api/processOrders" \ + -H "Content-Type: application/json" \ + -d '{}' \ No newline at end of file