disable socks for local

This commit is contained in:
Roy Olav Purser 2021-05-14 18:03:53 +02:00
parent 372dda4c3b
commit 960c1f639b
Signed by: roypur
GPG Key ID: E14D26A036F21656

View File

@ -34,6 +34,9 @@ class ProxyElem():
session.set_option("https-proxy", "socks5://" + self.proxy) session.set_option("https-proxy", "socks5://" + self.proxy)
session.set_option("http-proxy", "socks5://" + self.proxy) session.set_option("http-proxy", "socks5://" + self.proxy)
return session return session
def local(self):
timeout = aiohttp.ClientTimeout(total=1)
return aiohttp.ClientSession(timeout=timeout)
def session(self): def session(self):
connector = None connector = None
if self.proxy is not None: if self.proxy is not None:
@ -52,6 +55,9 @@ class ProxyElem():
logger.info(e) logger.info(e)
return ctype return ctype
async def proxy_url(self, current, path): async def proxy_url(self, current, path):
if proxy_server is None:
return data["upstream"]
jdata = None
data = {} data = {}
data_list = [data] data_list = [data]
if path is None: if path is None:
@ -64,18 +70,13 @@ class ProxyElem():
data["proxied"] = False data["proxied"] = False
else: else:
data["proxy"] = self.proxy data["proxy"] = self.proxy
if proxy_server is None:
return data["upstream"]
jdata = None
try: try:
async with self.session() as session: async with self.local() as session:
resp = await session.post(proxy_server, json=data_list) resp = await session.post(proxy_server, json=data_list)
text = await resp.text() text = await resp.text()
jdata = json.loads(text) jdata = json.loads(text)
except Exception as e: except Exception as e:
logger.info(e) logger.info(e)
if isinstance(jdata, list) and len(jdata) == 1: if isinstance(jdata, list) and len(jdata) == 1:
return jdata[0] return jdata[0]
else: else:
@ -268,7 +269,7 @@ async def rewrite(current, proxy):
if isinstance(proxy_server, str): if isinstance(proxy_server, str):
ndata = "" ndata = ""
try: try:
async with proxy.session() as session: async with proxy.local() as session:
resp = await session.post(proxy_server, json=links) resp = await session.post(proxy_server, json=links)
link_text = await resp.text() link_text = await resp.text()
except Exception as e: except Exception as e: