Skip to content

Commit

Permalink
add async http client (#760)
Browse files Browse the repository at this point in the history
  • Loading branch information
wintonzheng authored Aug 29, 2024
1 parent ffc4b35 commit 1ef67f9
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions skyvern/forge/sdk/core/async_http_client.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
from typing import Any

import httpx


class AsyncHttpClient:
"""
A wrapper of httpx client.
Functionalities:
1. It comes with a default httpx.AsyncClient instance.
2. The httx client could be replaced by a set_client method.
"""

def __init__(self, proxy: str | None = None) -> None:
self.client = httpx.AsyncClient(proxy=proxy)

async def get(self, url: str) -> httpx.Response:
return await self.client.get(url)

async def post(self, url: str, data: dict[Any, Any] | None = None) -> httpx.Response:
return await self.client.post(url, data=data)

async def close(self) -> None:
await self.client.aclose()

0 comments on commit 1ef67f9

Please sign in to comment.