###调用服务器API ###By Liang-work(NRFF&nanci) ###Version 1.0 ###License: MIT from ProjectCfg import DOMAIN from .CallServer import _make_request import httpx def OPITIONS(self,path,params): response = httpx.options(f"{self.url}{path}",params=params,headers=self.headers) if response: return {"status": response.status_code, "data": response.json()} else: return {"status": response.status_code, "data": {}} ###=========================活动API================================= def ActivityAPIs(cursor: str = '', filter: str = '', take: int = 20, debuginclude: str = '', Authorization: str = '') -> dict: """获取首页内容""" url = f"{DOMAIN}/activities" headers = {'accept': 'application/json', 'Authorization': Authorization} params = {"cursor": cursor, "filter": filter, "take": take, "debuginclude": debuginclude} return _make_request('GET', url, headers, params=params) ###==========================领域的发现========================== def GetDiscover(query: str = '', take: int = 20, offset: int = 0, Authorization: str = '') -> dict: """获取发现""" url = f"{DOMAIN}/discovery/realms" headers = {'accept': 'application/json', 'Authorization': Authorization} params = {'query': query, 'take': take, 'offset': offset} return _make_request('GET', url, headers, params=params) ###==========================领域聊天========================== def RealmChat(Authorization: str,slug:str ) -> dict: """获取领域聊天""" url = f"{DOMAIN}/realms/{slug}/chat" headers = {'accept': 'application/json', 'Authorization': Authorization} return _make_request('GET', url, headers) ###==========================尊贵的Solar Network 恒星计划订阅用户专属翻译功能======= :(呜呜呜,没钱订阅 def TranslationText(Authorization: str,text:str ,Tolang:str,FromLang:str) -> dict: """翻译文本""" url = f"{DOMAIN}/translation" headers = {'accept': 'application/json', 'Authorization': Authorization} params = {"to":Tolang,"from":FromLang} return _make_request('POST', url, headers, params=params,request_body=text) ###==========================服务器版本========================== def GetServerVersion() -> dict: """获取服务器版本""" url = f"{DOMAIN}/version" headers = {'accept': 'application/json'} return _make_request('GET', url, headers) ###==========================签到========================== def SignIn(Authorization: str) -> dict: """ 签到 :return: """ return OPITIONS("/id/accounts/me/check-in",{}) ###==========================获取通知========================== def GetNotifications(Authorization: str,offset: int = 0, take: int = 20) -> dict: """ 获取通知 :param offset: :param take: :return: """ return _make_request("GET","/pusher/notification",{"offset":offset,"take":take})