api to get all services and apps
diff --git a/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/controller/ServiceController.java b/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/controller/ServiceController.java
index 1776fb1..0b48ec0 100644
--- a/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/controller/ServiceController.java
+++ b/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/controller/ServiceController.java
@@ -17,6 +17,7 @@
package org.apache.dubbo.admin.controller;
+import com.ctrip.framework.apollo.core.enums.Env;
import com.google.gson.Gson;
import org.apache.dubbo.admin.common.util.ConvertUtil;
import org.apache.dubbo.admin.model.domain.Consumer;
@@ -26,7 +27,6 @@
import org.apache.dubbo.admin.service.ConsumerService;
import org.apache.dubbo.admin.service.ProviderService;
import org.apache.dubbo.admin.common.util.Constants;
-import org.apache.dubbo.common.utils.StringUtils;
import org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
import org.springframework.beans.factory.annotation.Autowired;
@@ -38,7 +38,7 @@
@RestController
-@RequestMapping("/api/{env}/service")
+@RequestMapping("/api/{env}")
public class ServiceController {
private final ProviderService providerService;
@@ -50,7 +50,7 @@
this.consumerService = consumerService;
}
- @RequestMapping(method = RequestMethod.GET)
+ @RequestMapping( value = "/service", method = RequestMethod.GET)
public Set<ServiceDTO> searchService(@RequestParam String pattern,
@RequestParam String filter,@PathVariable String env) {
return providerService.getServiceDTOS(pattern, filter, env);
@@ -58,7 +58,7 @@
- @RequestMapping(value = "/{service}", method = RequestMethod.GET)
+ @RequestMapping(value = "/service/{service}", method = RequestMethod.GET)
public ServiceDetailDTO serviceDetail(@PathVariable String service, @PathVariable String env) {
service = service.replace(Constants.ANY_VALUE, Constants.PATH_SEPARATOR);
List<Provider> providers = providerService.findByService(service);
@@ -84,4 +84,14 @@
}
return serviceDetailDTO;
}
+
+ @RequestMapping(value = "/services", method = RequestMethod.GET)
+ public Set<String> allServices(@PathVariable String env) {
+ return providerService.findServices();
+ }
+
+ @RequestMapping(value = "/applications", method = RequestMethod.GET)
+ public Set<String> allApplications(@PathVariable String env) {
+ return providerService.findApplications();
+ }
}
diff --git a/dubbo-admin-frontend/src/components/ServiceSearch.vue b/dubbo-admin-frontend/src/components/ServiceSearch.vue
index 293c6ce..6d42be3 100644
--- a/dubbo-admin-frontend/src/components/ServiceSearch.vue
+++ b/dubbo-admin-frontend/src/components/ServiceSearch.vue
@@ -312,18 +312,19 @@
pattern = 'service'
this.search(this.filter, pattern, true)
}
- this.$axios.get('/service', {
- params: {
- pattern: 'service',
- filter: '*'
- }
- }).then(response => {
- let length = response.data.length
- for (let i = 0; i < length; i++) {
- vm.serviceItem.push(response.data[i].service)
- vm.appItem.push(response.data[i].appName)
- }
- })
+ this.$axios.get('/services')
+ .then(response => {
+ if (response.status === 200) {
+ vm.serviceItem = response.data
+ }
+ })
+
+ this.$axios.get('/applications')
+ .then(response => {
+ if (response.status === 200) {
+ vm.appItem = response.data
+ }
+ })
}
}