From ca1a687610f297311ca7986553f0060fef9dfab4 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 3 Jul 2025 14:54:01 +0800 Subject: [PATCH] =?UTF-8?q?##=20Feat=20-=20=E4=BA=AC=E4=B8=9C=E9=93=B6?= =?UTF-8?q?=E8=A1=8C=E5=8D=A1=E6=94=AF=E4=BB=98(member/sale/third)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pay/controller/base/JdBaseController.java | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 bd-third/src/main/java/com/hzs/third/pay/controller/base/JdBaseController.java diff --git a/bd-third/src/main/java/com/hzs/third/pay/controller/base/JdBaseController.java b/bd-third/src/main/java/com/hzs/third/pay/controller/base/JdBaseController.java new file mode 100644 index 00000000..a339dbe4 --- /dev/null +++ b/bd-third/src/main/java/com/hzs/third/pay/controller/base/JdBaseController.java @@ -0,0 +1,64 @@ +package com.hzs.third.pay.controller.base; + +import cn.hutool.crypto.SecureUtil; + +import javax.servlet.http.HttpServletRequest; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; + +/** + * @Description: 京东基础控制器 + * @Author: jiang chao + * @Time: 2022/12/27 17:47 + * @Classname: JdBaseController + * @PackageName: com.hzs.third.pay.controller.base + */ +public class JdBaseController { + + /** + * 获取请求体 + * + * @param request + * @return + * @throws Exception + */ + protected String getRequestBody(HttpServletRequest request) throws IOException { + BufferedReader br = null; + try { + br = new BufferedReader(new InputStreamReader(request.getInputStream())); + String line; + StringBuilder sb = new StringBuilder(); + while ((line = br.readLine()) != null) { + sb.append(line); + } + return sb.toString(); + } finally { + if (null != br) { + try { + br.close(); + } catch (Exception e) { + e.printStackTrace(); + } + } + } + } + + /** + * 校验token + * + * @param request + * @param reqBody + * @param secretKey + * @return + */ + protected boolean checkToken(HttpServletRequest request, String reqBody, String secretKey) { + // SHA1 加密串 + String shaStr = "secretKey=" + secretKey + + "×tamp=" + request.getHeader("timestamp") + + "&body=" + reqBody; + String tokenCheck = SecureUtil.sha1(shaStr).toUpperCase(); + return tokenCheck.equals(request.getHeader("token")); + } + +}