Commit febf1e56 by inrgihc

测试问题修复

parent a47b48d2
......@@ -3,6 +3,7 @@ package com.gitee.sqlrest.core.exec;
import cn.hutool.core.exceptions.ExceptionUtil;
import com.gitee.sqlrest.common.dto.ItemParam;
import com.gitee.sqlrest.common.dto.ResultEntity;
import com.gitee.sqlrest.common.enums.HttpMethodEnum;
import com.gitee.sqlrest.common.enums.ParamLocationEnum;
import com.gitee.sqlrest.common.enums.ParamTypeEnum;
import com.gitee.sqlrest.common.exception.ResponseErrorCode;
......@@ -165,12 +166,15 @@ public class ApiExecuteService {
}
public Map<String, Object> getRequestBodyMap(HttpServletRequest request) throws IOException {
MediaType contentType = MediaType.parseMediaType(request.getContentType());
Charset charset = (contentType != null && contentType.getCharset() != null ?
contentType.getCharset() : StandardCharsets.UTF_8);
for (HttpRequestBodyExtractor bodyExtractor : requestBodyExtractors) {
if (bodyExtractor.support(contentType)) {
return bodyExtractor.read(charset, request.getInputStream());
HttpMethodEnum methodEnum = HttpMethodEnum.valueOf(request.getMethod());
if (methodEnum.isHasBody()) {
MediaType contentType = MediaType.parseMediaType(request.getContentType());
Charset charset = (contentType != null && contentType.getCharset() != null ?
contentType.getCharset() : StandardCharsets.UTF_8);
for (HttpRequestBodyExtractor bodyExtractor : requestBodyExtractors) {
if (bodyExtractor.support(contentType)) {
return bodyExtractor.read(charset, request.getInputStream());
}
}
}
return Collections.emptyMap();
......
......@@ -96,7 +96,7 @@ public class ScriptExecutorService extends AbstractExecutorEngine {
Binding binding = new Binding();
params.forEach((k, v) -> binding.setProperty(k, v));
binding.setProperty(getModuleVarName(dbModule.getClass()), dbModule);
binding.setProperty(getModuleVarName(entity.getClass()), envModule);
binding.setProperty(getModuleVarName(envModule.getClass()), envModule);
GroovyShell groovyShell = new GroovyShell(binding);
try {
......
package com.gitee.sqlrest.core.exec.module;
import cn.hutool.core.util.NumberUtil;
import com.gitee.sqlrest.common.consts.Constants;
import com.gitee.sqlrest.common.enums.NamingStrategyEnum;
import com.gitee.sqlrest.common.enums.ProductTypeEnum;
import com.gitee.sqlrest.core.exec.annotation.Comment;
......@@ -19,7 +17,6 @@ import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import javax.sql.DataSource;
import lombok.extern.slf4j.Slf4j;
......@@ -34,9 +31,6 @@ import org.springframework.jdbc.support.GeneratedKeyHolder;
@Module("db")
public class DbVarModule {
private static Pattern REPLACE_ORDER_BY = Pattern
.compile("order\\s+by\\s+[^,\\s]+(\\s+asc|\\s+desc)?(\\s*,\\s*[^,\\s]+(\\s+asc|\\s+desc)?)*",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE);
private static Configuration cfg = new Configuration();
private JdbcTemplate jdbcTemplate;
......@@ -77,8 +71,7 @@ public class DbVarModule {
log.info("Enter selectCount() function, SQL:{},params:{}", sqlOrXml, params);
SqlTemplate template = cfg.getTemplate(sqlOrXml);
SqlMeta sqlMeta = template.process(params);
String sql = REPLACE_ORDER_BY.matcher(sqlMeta.getSql()).replaceAll("");
String countSql = String.format("select count(*) from (%s) a", sql);
String countSql = String.format("select count(*) from (%s) a", sqlMeta.getSql());
return jdbcTemplate.queryForObject(countSql, Integer.class, sqlMeta.getParameter().toArray());
}
......
......@@ -26,6 +26,14 @@ public class FirewallFilterService {
private FirewallRulesDao firewallRulesDao;
@PostConstruct
public void init() {
try {
refresh();
} catch (Exception e) {
log.warn("load firewall rules failed:{}", e.getMessage());
}
}
public void refresh() {
this.firewallRules = firewallRulesDao.getFirewallRules();
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment