Skip to content
Snippets Groups Projects
Commit 6287b0ff authored by Sebastian Lobinger's avatar Sebastian Lobinger
Browse files

implemented new ability for app to have proxy with root path fixed #20

parent 78022022
No related branches found
No related tags found
1 merge request!15Resolve "Basis-Pfad (/) bei API über Proxy nicht aufrufbar"
Pipeline #
......@@ -46,14 +46,18 @@ class SAMSApp:
endpoint = '_'.join(view['function'].split('.'))
view_func = SAMSApp._get_attr(self.module, view['function'])
self.__blueprint.add_url_rule(
rule = self._generate_url(view.get('url')), endpoint = endpoint,
rule = self._generate_url(urlPart = view.get('url')), endpoint = endpoint,
view_func = view_func)
def __add_proxy_urls(self):
i = 0
for proxy in self.proxies:
self.__blueprint.add_url_rule(
rule = self._generate_url(proxy.urlRule),
rule = self._generate_url(urlPart = proxy.urlRule),
endpoint = self.__blueprint.name.replace('.', '_') + '_proxy_' + str(i),
view_func = proxy.proxy)
self.__blueprint.add_url_rule(
rule = self._generate_url(urlPart = proxy.rootUrlRule),
endpoint = self.__blueprint.name.replace('.', '_') + '_proxy_' + str(i),
view_func = proxy.proxy)
i += 1
......@@ -107,15 +111,12 @@ class SAMSApp:
return entries
def _generate_url(
self, urlPrefix: str, urlPart: str = '', external = False ) -> str:
self, urlPrefix: str = '', urlPart: str = '', external = False ) -> str:
if external:
return urlPart
urlPrefix = urlPrefix.strip('/')
urlPart = urlPart.strip('/')
urlElements = []
if urlPrefix:
urlElements.append(urlPrefix)
if urlPart:
urlElements.append(urlPart)
url = '/'.join(urlElements)
return '/' + url if (not url) or (url[0] is not '/') else url
\ No newline at end of file
urlPart = urlPart.lstrip('/')
url = '/'.join([urlPrefix, urlPart])
if url[0] != '/':
url = '/' + url
return url
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment