xuekang
2024-05-11 bac0878349a1db23e7b420ea164e22fb9db73a99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package com.nuvole.util;
 
import cn.hutool.core.io.IoUtil;
import com.alibaba.fastjson.JSON;
import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.text.StringEscapeUtils;
 
import java.io.IOException;
import java.nio.charset.Charset;
 
/**
 * @ClassName HttpUtilExtra
 * @Description http扩展工具类
 * @Author Chen Long
 * @Date 2019/8/23
 * @Version 1.0
 */
public class HttpUtilExtra {
 
    /**
     * 获取request body值
     * @param request
     * @return
     */
    public static String getRequestBody(HttpServletRequest request) {
        try {
            return IoUtil.read(request.getInputStream(), Charset.forName("UTF-8"));
        } catch (IOException e) {
            e.printStackTrace();
        }
        return "";
    }
 
    /**
     * request body 转对象
     * @param request
     * @param classz
     * @return
     */
    public static <T> T getObjByRequestBody(HttpServletRequest request, Class<T> classz) {
        String body = StringEscapeUtils.unescapeHtml4(getRequestBody(request));
        return JSON.parseObject(body, classz);
    }
 
    public static <T> T getObjByRequestBody(Class<T> classz) {
        String body = StringEscapeUtils.unescapeHtml4(getRequestBody(CommonUtil.getRequest()));
        return JSON.parseObject(body, classz);
    }
}