mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2025-07-19 12:03:37 +00:00
feat: sse完全体
This commit is contained in:
@@ -19,9 +19,11 @@
|
|||||||
<t-tabs ref="tabsRef" :style="{ width: tabsWidth + 'px' }" default-value="all" @change="selectType">
|
<t-tabs ref="tabsRef" :style="{ width: tabsWidth + 'px' }" default-value="all" @change="selectType">
|
||||||
<t-tab-panel value="all" label="全部"></t-tab-panel>
|
<t-tab-panel value="all" label="全部"></t-tab-panel>
|
||||||
<t-tab-panel value="httpServers" label="HTTP 服务器"></t-tab-panel>
|
<t-tab-panel value="httpServers" label="HTTP 服务器"></t-tab-panel>
|
||||||
|
<t-tab-panel value="httpSeeServers" label="HTTP SSE 服务器"></t-tab-panel>
|
||||||
<t-tab-panel value="httpClients" label="HTTP 客户端"></t-tab-panel>
|
<t-tab-panel value="httpClients" label="HTTP 客户端"></t-tab-panel>
|
||||||
<t-tab-panel value="websocketServers" label="WebSocket 服务器"></t-tab-panel>
|
<t-tab-panel value="websocketServers" label="WebSocket 服务器"></t-tab-panel>
|
||||||
<t-tab-panel value="websocketClients" label="WebSocket 客户端"></t-tab-panel>
|
<t-tab-panel value="websocketClients" label="WebSocket 客户端"></t-tab-panel>
|
||||||
|
|
||||||
</t-tabs>
|
</t-tabs>
|
||||||
</div>
|
</div>
|
||||||
<t-loading attach="#alice" :loading="!loadPage" :showOverlay="false">
|
<t-loading attach="#alice" :loading="!loadPage" :showOverlay="false">
|
||||||
@@ -199,6 +201,7 @@
|
|||||||
>
|
>
|
||||||
<t-select v-model="newTab.type" @change="onloadDefault">
|
<t-select v-model="newTab.type" @change="onloadDefault">
|
||||||
<t-option value="httpServers">HTTP 服务器</t-option>
|
<t-option value="httpServers">HTTP 服务器</t-option>
|
||||||
|
<t-option value="httpSseServers">HTTP SSE 服务器</t-option>
|
||||||
<t-option value="httpClients">HTTP 客户端</t-option>
|
<t-option value="httpClients">HTTP 客户端</t-option>
|
||||||
<t-option value="websocketServers">WebSocket 服务器</t-option>
|
<t-option value="websocketServers">WebSocket 服务器</t-option>
|
||||||
<t-option value="websocketClients">WebSocket 客户端</t-option>
|
<t-option value="websocketClients">WebSocket 客户端</t-option>
|
||||||
@@ -266,6 +269,7 @@ const componentMap: Record<
|
|||||||
| typeof WebsocketClientComponent
|
| typeof WebsocketClientComponent
|
||||||
> = {
|
> = {
|
||||||
httpServers: HttpServerComponent,
|
httpServers: HttpServerComponent,
|
||||||
|
httpSseServers: HttpServerComponent,
|
||||||
httpClients: HttpClientComponent,
|
httpClients: HttpClientComponent,
|
||||||
websocketServers: WebsocketServerComponent,
|
websocketServers: WebsocketServerComponent,
|
||||||
websocketClients: WebsocketClientComponent,
|
websocketClients: WebsocketClientComponent,
|
||||||
@@ -279,6 +283,7 @@ const configIndex = ref<number>(0);
|
|||||||
const networkConfig: NetworkConfig & { [key: string]: any } = {
|
const networkConfig: NetworkConfig & { [key: string]: any } = {
|
||||||
websocketClients: [],
|
websocketClients: [],
|
||||||
websocketServers: [],
|
websocketServers: [],
|
||||||
|
httpSseServers: [],
|
||||||
httpClients: [],
|
httpClients: [],
|
||||||
httpServers: [],
|
httpServers: [],
|
||||||
};
|
};
|
||||||
@@ -289,6 +294,7 @@ const WebConfg = ref(
|
|||||||
['all', []],
|
['all', []],
|
||||||
['httpServers', []],
|
['httpServers', []],
|
||||||
['httpClients', []],
|
['httpClients', []],
|
||||||
|
['httpSseServers', []],
|
||||||
['websocketServers', []],
|
['websocketServers', []],
|
||||||
['websocketClients', []],
|
['websocketClients', []],
|
||||||
])
|
])
|
||||||
@@ -296,6 +302,7 @@ const WebConfg = ref(
|
|||||||
const typeCh: Record<ComponentKey, string> = {
|
const typeCh: Record<ComponentKey, string> = {
|
||||||
httpServers: 'HTTP 服务器',
|
httpServers: 'HTTP 服务器',
|
||||||
httpClients: 'HTTP 客户端',
|
httpClients: 'HTTP 客户端',
|
||||||
|
httpSseServers: 'HTTP SSE 服务器',
|
||||||
websocketServers: 'WebSocket 服务器',
|
websocketServers: 'WebSocket 服务器',
|
||||||
websocketClients: 'WebSocket 客户端',
|
websocketClients: 'WebSocket 客户端',
|
||||||
};
|
};
|
||||||
|
58
napcat.webui/src/pages/network/HttpSseServerComponent.vue
Normal file
58
napcat.webui/src/pages/network/HttpSseServerComponent.vue
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<t-form labelAlign="left">
|
||||||
|
<t-form-item label="启用">
|
||||||
|
<t-switch v-model="config.enable" />
|
||||||
|
</t-form-item>
|
||||||
|
<t-form-item label="端口">
|
||||||
|
<t-input v-model.number="config.port" type="number" />
|
||||||
|
</t-form-item>
|
||||||
|
<t-form-item label="主机">
|
||||||
|
<t-input v-model="config.host" type="text" />
|
||||||
|
</t-form-item>
|
||||||
|
<t-form-item label="报告自身消息">
|
||||||
|
<t-switch v-model="config.reportSelfMessage" />
|
||||||
|
</t-form-item>
|
||||||
|
<t-form-item label="启用 CORS">
|
||||||
|
<t-switch v-model="config.enableCors" />
|
||||||
|
</t-form-item>
|
||||||
|
<t-form-item label="启用 WS">
|
||||||
|
<t-switch v-model="config.enableWebsocket" />
|
||||||
|
</t-form-item>
|
||||||
|
<t-form-item label="消息格式">
|
||||||
|
<t-select v-model="config.messagePostFormat" :options="messageFormatOptions" />
|
||||||
|
</t-form-item>
|
||||||
|
<t-form-item label="Token">
|
||||||
|
<t-input v-model="config.token" type="text" />
|
||||||
|
</t-form-item>
|
||||||
|
<t-form-item label="调试模式">
|
||||||
|
<t-switch v-model="config.debug" />
|
||||||
|
</t-form-item>
|
||||||
|
</t-form>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { ref, watch } from 'vue';
|
||||||
|
import { HttpSseServerConfig } from '../../../../src/onebot/config/config';
|
||||||
|
|
||||||
|
const props = defineProps<{
|
||||||
|
config: HttpSseServerConfig;
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const messageFormatOptions = ref([
|
||||||
|
{ label: 'Array', value: 'array' },
|
||||||
|
{ label: 'String', value: 'string' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
watch(
|
||||||
|
() => props.config.messagePostFormat,
|
||||||
|
(newValue) => {
|
||||||
|
if (newValue !== 'array' && newValue !== 'string') {
|
||||||
|
props.config.messagePostFormat = 'array';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped></style>
|
@@ -210,6 +210,7 @@ export class NapCatOneBot11Adapter {
|
|||||||
|
|
||||||
await this.handleConfigChange(prev.network.httpServers, now.network.httpServers, OB11PassiveHttpAdapter);
|
await this.handleConfigChange(prev.network.httpServers, now.network.httpServers, OB11PassiveHttpAdapter);
|
||||||
await this.handleConfigChange(prev.network.httpClients, now.network.httpClients, OB11ActiveHttpAdapter);
|
await this.handleConfigChange(prev.network.httpClients, now.network.httpClients, OB11ActiveHttpAdapter);
|
||||||
|
await this.handleConfigChange(prev.network.httpSseServers, now.network.httpSseServers, OB11ActiveHttpSSEAdapter);
|
||||||
await this.handleConfigChange(prev.network.websocketServers, now.network.websocketServers, OB11PassiveWebSocketAdapter);
|
await this.handleConfigChange(prev.network.websocketServers, now.network.websocketServers, OB11PassiveWebSocketAdapter);
|
||||||
await this.handleConfigChange(prev.network.websocketClients, now.network.websocketClients, OB11ActiveWebSocketAdapter);
|
await this.handleConfigChange(prev.network.websocketClients, now.network.websocketClients, OB11ActiveWebSocketAdapter);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user