RuoYi
2022-11-22 1bb6342bcbcd02ecdb02476413c5f93c09bc15ff
修复Log注解GET请求记录不到参数问题
已修改3个文件
46 ■■■■ 文件已修改
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/AjaxResult.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/utils/ServletUtils.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/LogAspect.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/AjaxResult.java
@@ -127,7 +127,7 @@
    /**
     * 返回错误消息
     * 
     * @return
     * @return 错误消息
     */
    public static AjaxResult error()
    {
@@ -138,7 +138,7 @@
     * 返回错误消息
     * 
     * @param msg 返回内容
     * @return 警告消息
     * @return 错误消息
     */
    public static AjaxResult error(String msg)
    {
@@ -150,7 +150,7 @@
     * 
     * @param msg 返回内容
     * @param data 数据对象
     * @return 警告消息
     * @return 错误消息
     */
    public static AjaxResult error(String msg, Object data)
    {
@@ -162,7 +162,7 @@
     * 
     * @param code 状态码
     * @param msg 返回内容
     * @return 警告消息
     * @return 错误消息
     */
    public static AjaxResult error(int code, String msg)
    {
ruoyi-common/src/main/java/com/ruoyi/common/utils/ServletUtils.java
@@ -4,6 +4,10 @@
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
@@ -69,6 +73,34 @@
    }
    /**
     * 获得所有请求参数
     *
     * @param request 请求对象{@link ServletRequest}
     * @return Map
     */
    public static Map<String, String[]> getParams(ServletRequest request)
    {
        final Map<String, String[]> map = request.getParameterMap();
        return Collections.unmodifiableMap(map);
    }
    /**
     * 获得所有请求参数
     *
     * @param request 请求对象{@link ServletRequest}
     * @return Map
     */
    public static Map<String, String> getParamMap(ServletRequest request)
    {
        Map<String, String> params = new HashMap<>();
        for (Map.Entry<String, String[]> entry : getParams(request).entrySet())
        {
            params.put(entry.getKey(), StringUtils.join(entry.getValue(), ","));
        }
        return params;
    }
    /**
     * 获取request
     */
    public static HttpServletRequest getRequest()
ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/LogAspect.java
@@ -13,7 +13,6 @@
import org.springframework.stereotype.Component;
import org.springframework.validation.BindingResult;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.HandlerMapping;
import com.alibaba.fastjson2.JSON;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.domain.model.LoginUser;
@@ -103,7 +102,6 @@
        catch (Exception exp)
        {
            // 记录本地异常日志
            log.error("==前置通知异常==");
            log.error("异常信息:{}", exp.getMessage());
            exp.printStackTrace();
        }
@@ -153,8 +151,8 @@
        }
        else
        {
            Map<?, ?> paramsMap = (Map<?, ?>) ServletUtils.getRequest().getAttribute(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE);
            operLog.setOperParam(StringUtils.substring(paramsMap.toString(), 0, 2000));
            Map<?, ?> paramsMap = ServletUtils.getParamMap(ServletUtils.getRequest());
            operLog.setOperParam(StringUtils.substring(JSON.toJSONString(paramsMap, excludePropertyPreFilter()), 0, 2000));
        }
    }