diff --git a/app/api/endpoints/plugin.py b/app/api/endpoints/plugin.py index c1672932..7f57efec 100644 --- a/app/api/endpoints/plugin.py +++ b/app/api/endpoints/plugin.py @@ -97,8 +97,6 @@ def install(plugin_id: str, install_plugins.append(plugin_id) # 保存设置 SystemConfigOper().set(SystemConfigKey.UserInstalledPlugins, install_plugins) - # 统计 - PluginHelper().install_reg(plugin_id) # 加载插件到内存 PluginManager().reload_plugin(plugin_id) # 注册插件服务 diff --git a/app/api/endpoints/site.py b/app/api/endpoints/site.py index c5623e77..052f7bcc 100644 --- a/app/api/endpoints/site.py +++ b/app/api/endpoints/site.py @@ -42,10 +42,12 @@ def add_site( """ if not site_in.url: return schemas.Response(success=False, message="站点地址不能为空") + if SitesHelper().auth_level < 2: + return schemas.Response(success=False, message="用户未通过认证,无法使用站点功能!") domain = StringUtils.get_url_domain(site_in.url) site_info = SitesHelper().get_indexer(domain) if not site_info: - return schemas.Response(success=False, message="该站点不支持或用户未通过认证") + return schemas.Response(success=False, message="该站点不支持,请检查站点域名是否正确") if Site.get_by_domain(db, domain): return schemas.Response(success=False, message=f"{domain} 站点己存在") # 保存站点信息 diff --git a/app/core/plugin.py b/app/core/plugin.py index cfba6487..b9560075 100644 --- a/app/core/plugin.py +++ b/app/core/plugin.py @@ -35,8 +35,6 @@ class PluginManager(metaclass=Singleton): self.siteshelper = SitesHelper() self.pluginhelper = PluginHelper() self.systemconfig = SystemConfigOper() - self.install_online_plugin() - self.init_config() def init_config(self): # 停止已有插件 diff --git a/app/helper/resource.py b/app/helper/resource.py index 732a8efe..072d3171 100644 --- a/app/helper/resource.py +++ b/app/helper/resource.py @@ -76,8 +76,10 @@ class ResourceHelper(metaclass=Singleton): # 下载文件信息列表 r = RequestUtils(proxies=settings.PROXY, headers=settings.GITHUB_HEADERS, timeout=30).get_res(self._files_api) - if not r or r.status_code != 200: + if r and not r.ok: return None, f"连接仓库失败:{r.status_code} - {r.reason}" + elif not r: + return None, "连接仓库失败" files_info = r.json() for item in files_info: save_path = need_updates.get(item.get("name")) diff --git a/app/main.py b/app/main.py index c95ac560..c4f543d4 100644 --- a/app/main.py +++ b/app/main.py @@ -195,8 +195,10 @@ def start_module(): ResourceHelper() # 加载模块 ModuleManager() + # 安装在线插件 + PluginManager().install_online_plugin() # 加载插件 - PluginManager() + PluginManager().start() # 启动定时服务 Scheduler() # 启动事件消费 diff --git a/app/utils/singleton.py b/app/utils/singleton.py index 908b2ffd..505f5ba3 100644 --- a/app/utils/singleton.py +++ b/app/utils/singleton.py @@ -18,4 +18,4 @@ class Singleton(abc.ABCMeta, type): class AbstractSingleton(abc.ABC, metaclass=Singleton): """ 抽像类单例模式 - """ \ No newline at end of file + """