36 lines
1.3 KiB
Python
Raw Normal View History

2024-12-13 15:58:25 +08:00
from src.libs.custom_logger import get_custom_logger
import json
2025-02-10 15:24:16 +08:00
from src.api_clients.base_client import BaseClient
2024-12-13 15:58:25 +08:00
logger = get_custom_logger(__name__)
class REST(BaseClient):
def __init__(self, rest_port):
self._rest_port = rest_port
2025-03-05 03:37:11 +00:00
def rest_call(self, method, endpoint, payload=None, host="127.0.0.1", port=None):
if port is None:
port = self._rest_port
url = f"http://{host}:{port}/{endpoint}"
headers = {"Content-Type": "application/json", "Connection": "close"}
2024-12-13 15:58:25 +08:00
return self.make_request(method, url, headers=headers, data=payload)
2025-03-05 03:37:11 +00:00
def rest_call_text(self, method, endpoint, payload=None, host="127.0.0.1", port=None):
if port is None:
port = self._rest_port
url = f"http://{host}:{port}/{endpoint}"
headers = {"accept": "text/plain", "Connection": "close"}
2024-12-13 15:58:25 +08:00
return self.make_request(method, url, headers=headers, data=payload)
2025-01-07 21:08:41 +08:00
def info(self):
status_response = self.rest_call("get", "cryptarchia/info")
2025-01-07 14:40:28 +08:00
return status_response.json()
2025-03-05 03:37:11 +00:00
def send_dispersal_request(self, data, host=None, port=None):
return self.rest_call("post", "disperse-data", json.dumps(data))
2025-03-05 03:37:11 +00:00
def send_get_range(self, query, host=None, port=None):
2025-01-20 14:32:19 +08:00
response = self.rest_call("post", "da/get-range", json.dumps(query))
return response.json()