liujie
2023-08-16 db7fa6a91b9534ac90e219b6f554c54c43c83a5a
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
package com.supersavedriving.driver.modular.system.util.MallBook.util;
 
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.exceptions.ValidateException;
import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONUtil;
import com.supersavedriving.driver.modular.system.util.MallBook.config.ChannelConfig;
import com.supersavedriving.driver.modular.system.util.MallBook.model.InterfaceRequest;
import com.supersavedriving.driver.modular.system.util.MallBook.model.InterfaceResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
 
/**
 * @Author xiaogc
 * @Date 2022/1/24 13:45
 */
public class TrhRequest<T> {
 
    Logger logger = LoggerFactory.getLogger(TrhRequest.class);
 
    public InterfaceResponse execute(T t, String serverCode) {
        InterfaceRequest<T> request = new InterfaceRequest(t, serverCode);
        logger.warn("mallbook请求参数:" + JSONUtil.toJsonStr(request));
        String result = HttpUtil.post(ChannelConfig.payUrl, BeanUtil.beanToMap(request));
        logger.warn("mallbook响应参数:" + result);
        InterfaceResponse response = JSONUtil.toBean(result, InterfaceResponse.class);
        boolean verify = RSASignature.validate(response.content(), response.getSign());
        if (!verify) {
            logger.warn("签名验证失败");
        } else {
            logger.warn("签名验证通过");
        }
        return response;
    }
}