feat: basic websocket request

This commit is contained in:
Vlad Stan 2024-06-20 10:57:13 +03:00
parent f83693de98
commit 3e1e408999

View File

@ -13,18 +13,35 @@ class HTTPTunnelClient:
def __init__(self, websocket: WebSocket): def __init__(self, websocket: WebSocket):
self.ws = websocket self.ws = websocket
def reconect_ws(self, websocket: WebSocket):
self.ws = websocket
async def request( async def request(
self, self,
method: str, method: str,
url: str, url: str,
*, *,
data: Optional[dict] = None, data: Optional[str] = None,
json: Optional[dict] = None, json: Optional[dict] = None,
params: Optional[Mapping[str, str]] = None, params: Optional[Mapping[str, str]] = None,
headers: Optional[Mapping[str, str]] = None, headers: Optional[Mapping[str, str]] = None,
timeout: Optional[int] = None, timeout: Optional[int] = None,
) -> "HTTPTunnelResponse": ) -> "HTTPTunnelResponse":
pass try:
body = data
if json:
body = json.dumps(json)
self.ws.send_json(
{
"method": method,
"url": url,
"body": body,
"params": params,
"headers": headers,
}
)
except Exception as exc:
logger.warning(exc)
async def get( async def get(
self, self,