mirror of
https://gitee.com/ssssssss-team/magic-api.git
synced 2026-05-22 18:10:17 +08:00
持久化保存ResponseBody配置
This commit is contained in:
@@ -128,6 +128,13 @@ public class MagicAPIProperties {
|
||||
*/
|
||||
private int compileCacheSize = 500;
|
||||
|
||||
/**
|
||||
* 是否持久化保存ResponseBody
|
||||
*
|
||||
* @since 1.5.3
|
||||
*/
|
||||
private boolean persistenceResponseBody = true;
|
||||
|
||||
@NestedConfigurationProperty
|
||||
private SecurityConfig securityConfig = new SecurityConfig();
|
||||
|
||||
@@ -409,4 +416,12 @@ public class MagicAPIProperties {
|
||||
public void setCompileCacheSize(int compileCacheSize) {
|
||||
this.compileCacheSize = compileCacheSize;
|
||||
}
|
||||
|
||||
public boolean isPersistenceResponseBody() {
|
||||
return persistenceResponseBody;
|
||||
}
|
||||
|
||||
public void setPersistenceResponseBody(boolean persistenceResponseBody) {
|
||||
this.persistenceResponseBody = persistenceResponseBody;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -57,6 +57,7 @@ public class MagicSwaggerConfiguration {
|
||||
SwaggerProvider swaggerProvider = new SwaggerProvider();
|
||||
swaggerProvider.setGroupServiceProvider(groupServiceProvider);
|
||||
swaggerProvider.setMappingHandlerMapping(handlerMapping);
|
||||
swaggerProvider.setPersistenceResponseBody(properties.isPersistenceResponseBody());
|
||||
SwaggerEntity.License license = new SwaggerEntity.License("MIT", "https://gitee.com/ssssssss-team/magic-api/blob/master/LICENSE");
|
||||
swaggerProvider.setInfo(new SwaggerEntity.Info(config.getDescription(), config.getVersion(), config.getTitle(), license, config.getConcat()));
|
||||
swaggerProvider.setBasePath(servletContext.getContextPath());
|
||||
|
||||
@@ -40,6 +40,7 @@ public class SwaggerProvider {
|
||||
private String basePath;
|
||||
private GroupServiceProvider groupServiceProvider;
|
||||
private SwaggerEntity.Info info;
|
||||
private boolean persistenceResponseBody;
|
||||
|
||||
public void setMappingHandlerMapping(MappingHandlerMapping mappingHandlerMapping) {
|
||||
this.mappingHandlerMapping = mappingHandlerMapping;
|
||||
@@ -57,6 +58,10 @@ public class SwaggerProvider {
|
||||
this.basePath = basePath;
|
||||
}
|
||||
|
||||
public void setPersistenceResponseBody(boolean persistenceResponseBody) {
|
||||
this.persistenceResponseBody = persistenceResponseBody;
|
||||
}
|
||||
|
||||
@ResponseBody
|
||||
public SwaggerEntity swaggerJson() {
|
||||
this.DEFINITION_MAP.clear();
|
||||
@@ -78,16 +83,18 @@ public class SwaggerProvider {
|
||||
if (hasBody && baseDefinition != null) {
|
||||
doProcessDefinition(baseDefinition, info, "root_", "request", 0);
|
||||
}
|
||||
baseDefinition = info.getResponseBodyDefinition();
|
||||
parameters.forEach(path::addParameter);
|
||||
if (baseDefinition != null) {
|
||||
Map responseMap = parseResponse(info);
|
||||
if (!responseMap.isEmpty()) {
|
||||
path.setResponses(responseMap);
|
||||
doProcessDefinition(baseDefinition, info, "root_" + baseDefinition.getName(), "response", 0);
|
||||
if (this.persistenceResponseBody) {
|
||||
baseDefinition = info.getResponseBodyDefinition();
|
||||
if (baseDefinition != null) {
|
||||
Map responseMap = parseResponse(info);
|
||||
if (!responseMap.isEmpty()) {
|
||||
path.setResponses(responseMap);
|
||||
doProcessDefinition(baseDefinition, info, "root_" + baseDefinition.getName(), "response", 0);
|
||||
}
|
||||
} else {
|
||||
path.addResponse("200", mapper.readValue(Objects.toString(info.getResponseBody(), BODY_EMPTY), Object.class));
|
||||
}
|
||||
} else {
|
||||
path.addResponse("200", mapper.readValue(Objects.toString(info.getResponseBody(), BODY_EMPTY), Object.class));
|
||||
}
|
||||
|
||||
} catch (Exception ignored) {
|
||||
|
||||
@@ -448,6 +448,10 @@ export default {
|
||||
saveObj.headers = saveObj.headers.filter(it => it.name)
|
||||
saveObj.option = JSON.stringify(saveObj.option)
|
||||
// saveObj.requestHeader = JSON.stringify(saveObj.requestHeader.filter(it => it.name))
|
||||
if (contants.config.persistenceResponseBody === false) {
|
||||
delete saveObj.responseBody
|
||||
delete saveObj.responseBodyDefinition
|
||||
}
|
||||
return request.send('/save', JSON.stringify(saveObj), {
|
||||
method: 'post',
|
||||
headers: {
|
||||
|
||||
@@ -6,6 +6,7 @@ const bus = new Vue()
|
||||
try {
|
||||
let element = document.createElement("script");
|
||||
element.src = "https://s4.cnzz.com/z_stat.php?id=1280031557&web_id=1280031557";
|
||||
element.setAttribute('async', true);
|
||||
let s = document.getElementsByTagName("script")[0];
|
||||
s.parentNode.insertBefore(element, s);
|
||||
element.onload = element.onreadystatechange = function () {
|
||||
|
||||
Reference in New Issue
Block a user