diff --git a/src/apis/ec_api.js b/src/apis/ec_api.js
index aca300d..7ff95de 100644
--- a/src/apis/ec_api.js
+++ b/src/apis/ec_api.js
@@ -89,3 +89,13 @@ export const ec_api_send_request = (req_data) => {
})
}
+export const ec_api_get_suggest = (api_type, api) => {
+ return request({
+ url: 'ec/get_suggest_params',
+ method: 'get',
+ params: {
+ member_type: api_type,
+ api: api
+ }
+ })
+}
diff --git a/src/components/ec_api/TabArea.vue b/src/components/ec_api/TabArea.vue
index a90de5f..ca91e57 100644
--- a/src/components/ec_api/TabArea.vue
+++ b/src/components/ec_api/TabArea.vue
@@ -3,10 +3,10 @@ import {ref, reactive, onBeforeMount, onMounted, onUnmounted, watch, watchEffect
import Sortable from "sortablejs";
import {useStore, mapState} from "vuex";
import JsonEditorVue from "json-editor-vue3";
-import {ec_api_send_request, get_ec_api_request_url} from "@/apis/ec_api.js";
+import {ec_api_send_request, get_ec_api_request_url, ec_api_get_suggest} from "@/apis/ec_api.js";
import {Refresh} from "@element-plus/icons-vue";
import "@/VueAceEditor/aceConfig"
-import { VAceEditor } from "vue3-ace-editor";
+import {VAceEditor} from "vue3-ace-editor";
import {ElMessage} from "element-plus";
@@ -196,10 +196,10 @@ function handle_request_url() {
// 发送api请求
function send_request() {
- if (UserApiData.value.api[activeTab.value].format === 'json'){
+ if (UserApiData.value.api[activeTab.value].format === 'json') {
UserApiData.value.api[activeTab.value].response = '{"root": "root"}'
}
- if (UserApiData.value.api[activeTab.value].format === 'html' || UserApiData.value.api[activeTab.value].format === 'xml'){
+ if (UserApiData.value.api[activeTab.value].format === 'html' || UserApiData.value.api[activeTab.value].format === 'xml') {
UserApiData.value.api[activeTab.value].response = ''
}
const data = handle_request_data()
@@ -208,7 +208,7 @@ function send_request() {
UserApiData.value.api[activeTab.value].response = JSON.stringify(JSON.parse(res.data), null, 2)
}
if (res.format === 'xml') {
- const xmlDoc = new DOMParser().parseFromString(res.data , 'application/xml');
+ const xmlDoc = new DOMParser().parseFromString(res.data, 'application/xml');
const serializer = new XMLSerializer();
UserApiData.value.api[activeTab.value].response = serializer.serializeToString(xmlDoc);
}
@@ -216,6 +216,27 @@ function send_request() {
)
}
+async function get_suggest() {
+ const api_type = UserApiData.value.api[activeTab.value].type
+ const api = UserApiData.value.api[activeTab.value].path
+ await ec_api_get_suggest(api_type, api).then(
+ (res) => {
+ console.log('get_suggest', api, res)
+ res.forEach((suggest) => {
+ UserApiData.value.api[activeTab.value].params.forEach((param) => {
+ if (param.param === suggest.param) {
+ param['value'] = suggest['value']
+ param['default'] = suggest['value']
+ param['is_checked'] = suggest['is_checked']
+ }
+ })
+ })
+ }
+ ).catch((err) => {
+ console.log(err)
+ })
+}
+
// 用于测试,可以添加到需要的方法中
function test() {
console.log('store.state.ecApiModule.ec_api_data', store.state.ecApiModule.ec_api_data)
@@ -238,6 +259,7 @@ watch(() => store.state.ecApiModule.ec_api_data.api, (oldValue, newValue) => {
// 监测activeTab, 如果切换标签页,则执行自动勾选的函数
watch(activeTab, () => {
markIsChecked()
+ get_suggest()
handle_request_url()
})
@@ -357,7 +379,7 @@ const ace_options = {
+ theme="chrome" :options="ace_options" class="vue-ace-editor" :wrap="true" style="width: 1200px"/>