Cédric Krier pushed to branch branch/default at Tryton / Tryton
Commits: 4a9e0e65 by Cédric Krier at 2023-05-19T17:25:55+02:00 Set Tryton as default user agent header Closes #11979 - - - - - 6ea9c407 by Cédric Krier at 2023-05-19T17:32:03+02:00 Set Sendcloud Partner Id header - - - - - 2 changed files: - modules/stock_package_shipping_sendcloud/carrier.py - trytond/trytond/__init__.py Changes: ===================================== modules/stock_package_shipping_sendcloud/carrier.py ===================================== @@ -19,6 +19,9 @@ SENDCLOUD_API_URL = 'https://panel.sendcloud.sc/api/v2/' TIMEOUT = config.getfloat( 'stock_package_shipping_sendcloud', 'requests_timeout', default=300) +HEADERS = { + 'Sendcloud-Partner-Id': '03c1facb-63da-4bb1-889c-192fc91ec4e6', + } def sendcloud_api(func): @@ -87,7 +90,7 @@ return addresses response = requests.get( SENDCLOUD_API_URL + 'user/addresses/sender', - auth=self.auth, timeout=TIMEOUT) + auth=self.auth, timeout=TIMEOUT, headers=HEADERS) response.raise_for_status() addresses = response.json()['sender_addresses'] self._addresses_sender_cache.set(self.id, addresses) @@ -121,7 +124,7 @@ params['is_return'] = is_return response = requests.get( SENDCLOUD_API_URL + 'shipping_methods', params=params, - auth=self.auth, timeout=TIMEOUT) + auth=self.auth, timeout=TIMEOUT, headers=HEADERS) response.raise_for_status() methods = response.json()['shipping_methods'] self._shiping_methods_cache.set(key, methods) @@ -146,7 +149,7 @@ def get_parcel(self, id): response = requests.get( SENDCLOUD_API_URL + 'parcels/%s' % id, - auth=self.auth, timeout=TIMEOUT) + auth=self.auth, timeout=TIMEOUT, headers=HEADERS) response.raise_for_status() return response.json()['parcel'] @@ -154,7 +157,7 @@ def create_parcels(self, parcels): response = requests.post( SENDCLOUD_API_URL + 'parcels', json={'parcels': parcels}, - auth=self.auth, timeout=TIMEOUT) + auth=self.auth, timeout=TIMEOUT, headers=HEADERS) if response.status_code == 400: msg = response.json()['error']['message'] raise requests.HTTPError(msg, response=response) @@ -163,7 +166,8 @@ @sendcloud_api def get_label(self, url): - response = requests.get(url, auth=self.auth, timeout=TIMEOUT) + response = requests.get( + url, auth=self.auth, timeout=TIMEOUT, headers=HEADERS) response.raise_for_status() return response.content ===================================== trytond/trytond/__init__.py ===================================== @@ -8,6 +8,11 @@ import __main__ from lxml import etree, objectify +try: + from requests import utils as requests_utils +except ImportError: + requests_utils = None + __version__ = "6.9.0" os.environ.setdefault( @@ -27,3 +32,11 @@ # prevent XML vulnerabilities by default etree.set_default_parser(etree.XMLParser(resolve_entities=False)) objectify.set_default_parser(objectify.makeparser(resolve_entities=False)) + + +def default_user_agent(name="Tryton"): + return f"{name}/{__version__}" + + +if requests_utils: + requests_utils.default_user_agent = default_user_agent View it on Heptapod: https://foss.heptapod.net/tryton/tryton/-/compare/6ce8f3bbbfcdae910deb83be2a173677a8d70a6a...6ea9c407ccc8534446afbccc43ad00d8a4933389 -- View it on Heptapod: https://foss.heptapod.net/tryton/tryton/-/compare/6ce8f3bbbfcdae910deb83be2a173677a8d70a6a...6ea9c407ccc8534446afbccc43ad00d8a4933389 You're receiving this email because of your account on foss.heptapod.net.
