Files
SNAPI/PostCategory.py
2025-09-15 11:27:08 +00:00

43 lines
2.1 KiB
Python

from ProjectCfg import DOMAIN
from .CallServer import _make_request
from typing import Optional
###==========================帖子分类管理============================
def GetPostCategories(Authorization: str, query: Optional[str] = None, offset: int = 0, take: int = 20, order: Optional[str] = None) -> dict:
"""获取帖子分类"""
url = f"{DOMAIN}/posts/categories"
headers = {'accept': 'application/json', 'Authorization': Authorization}
params = {"query": query, "offset": offset, "take": take, "order": order}
return _make_request('GET', url, headers, params=params)
def PostPostCategory(Authorization: str, slug: Optional[str] = None, name: Optional[str] = None) -> dict:
"""创建帖子分类"""
body = {"slug": slug, "name": name}
url = f"{DOMAIN}/posts/categories"
headers = {'accept': 'application/json', 'Authorization': Authorization}
return _make_request('POST', url, headers, request_body=body, normal_codes=[201])
def GetPostCategoryBySlug(Authorization: str, slug: str) -> dict:
"""获取帖子分类详情"""
url = f"{DOMAIN}/posts/categories/{slug}"
headers = {'accept': 'application/json', 'Authorization': Authorization}
return _make_request('GET', url, headers)
def PostSubscribeCategory(Authorization: str, slug: str) -> dict:
"""订阅帖子分类"""
url = f"{DOMAIN}/posts/categories/{slug}/subscribe"
headers = {'accept': 'application/json', 'Authorization': Authorization}
return _make_request('POST', url, headers, normal_codes=[201])
def PostUnsubscribeCategory(Authorization: str, slug: str) -> dict:
"""取消订阅帖子分类"""
url = f"{DOMAIN}/posts/categories/{slug}/unsubscribe"
headers = {'accept': 'application/json', 'Authorization': Authorization}
return _make_request('POST', url, headers, normal_codes=[201])
def GetCategorySubscription(Authorization: str, slug: str) -> dict:
"""获取分类订阅状态"""
url = f"{DOMAIN}/posts/categories/{slug}/subscription"
headers = {'accept': 'application/json', 'Authorization': Authorization}
return _make_request('GET', url, headers)