feat: set cloud_service_url

This commit is contained in:
Junyan Qin
2025-08-14 23:42:57 +08:00
parent 39c50d3c12
commit ebe0b68e8f
4 changed files with 23 additions and 11 deletions

View File

@@ -14,6 +14,11 @@ class SystemRouterGroup(group.RouterGroup):
'version': constants.semantic_version,
'debug': constants.debug_mode,
'enabled_platform_count': len(self.ap.platform_mgr.get_running_adapters()),
'cloud_service_url': (
self.ap.instance_config.data['plugin']['cloud_service_url']
if 'cloud_service_url' in self.ap.instance_config.data['plugin']
else 'https://space.langbot.app'
),
}
)
@@ -57,7 +62,11 @@ class SystemRouterGroup(group.RouterGroup):
data=await self.ap.tool_mgr.execute_func_call(data['tool_name'], data['tool_parameters'])
)
@self.route('/debug/plugin/action', methods=['POST'], auth_type=group.AuthType.USER_TOKEN)
@self.route(
'/debug/plugin/action',
methods=['POST'],
auth_type=group.AuthType.USER_TOKEN,
)
async def _() -> str:
if not constants.debug_mode:
return self.http_status(403, 403, 'Forbidden')

View File

@@ -19,4 +19,5 @@ system:
expire: 604800
secret: ''
plugin:
runtime_ws_url: 'ws://plugin-runtime:5400/control/ws'
runtime_ws_url: 'ws://plugin-runtime:5400/control/ws'
cloud_service_url: 'https://space.langbot.app'

View File

@@ -151,6 +151,7 @@ export interface PluginReorderElement {
export interface ApiRespSystemInfo {
debug: boolean;
version: string;
cloud_service_url: string;
}
export interface ApiRespAsyncTasks {

View File

@@ -53,7 +53,11 @@ export interface RequestConfig extends AxiosRequestConfig {
retry?: number; // 重试次数
}
export let systemInfo: ApiRespSystemInfo | null = null;
export let systemInfo: ApiRespSystemInfo = {
debug: false,
version: '',
cloud_service_url: '',
};
class HttpClient {
private instance: AxiosInstance;
@@ -74,7 +78,10 @@ class HttpClient {
this.disableToken = disableToken || false;
this.initInterceptors();
if (systemInfo === null && baseURL != 'https://space.langbot.app') {
if (
systemInfo.cloud_service_url === '' &&
baseURL != 'https://space.langbot.app'
) {
this.getSystemInfo().then((res) => {
systemInfo = res;
});
@@ -86,12 +93,6 @@ class HttpClient {
return this.baseURL;
}
// 获取Session
private async getSession() {
// NOT IMPLEMENT
return '';
}
// 同步获取Session
private getSessionSync() {
// NOT IMPLEMENT
@@ -505,4 +506,4 @@ const getBaseURL = (): string => {
export const httpClient = new HttpClient(getBaseURL());
// 临时写法未来两种Client都继承自HttpClient父类不允许共享方法
export const spaceClient = new HttpClient('https://space.langbot.app');
export const spaceClient = new HttpClient(systemInfo.cloud_service_url);