28 lines
941 B
Python
28 lines
941 B
Python
from typing import Union
|
|
|
|
from zope.interface import Interface
|
|
|
|
|
|
class IHTTPClient(Interface):
|
|
"""A helper class for HTTP requests to ceod."""
|
|
|
|
def request(host: str, api_path: str, method: str, principal: str,
|
|
need_cred: bool, **kwargs):
|
|
"""Make an HTTP request."""
|
|
|
|
def get(host: str, api_path: str, principal: Union[str, None] = None,
|
|
need_cred: bool = True, **kwargs):
|
|
"""Make a GET request."""
|
|
|
|
def post(host: str, api_path: str, principal: Union[str, None] = None,
|
|
need_cred: bool = True, **kwargs):
|
|
"""Make a POST request."""
|
|
|
|
def patch(host: str, api_path: str, principal: Union[str, None] = None,
|
|
need_cred: bool = True, **kwargs):
|
|
"""Make a PATCH request."""
|
|
|
|
def delete(host: str, api_path: str, principal: Union[str, None] = None,
|
|
need_cred: bool = True, **kwargs):
|
|
"""Make a DELETE request."""
|