postman发送post请求,用request.getParameter()获取请求参数

1.接口代码

@RequestMapping("notifyUrl")
  public void notifyUrl(HttpServletRequest request, HttpServletResponse response) {
    String transactionId = request.getParameter("transaction_id");
    String contractId = request.getParameter("contract_id");
    String resultCode = request.getParameter("result_code"); // 3000(签章成功)3001(签章失败)
    String resultDesc = request.getParameter("result_desc");
    String timestamp = request.getParameter("timestamp");
    String msgDigest = request.getParameter("msg_digest");// Base64( SHA1(
                                                          // app_id+MD5(timestamp)+SHA1(app_secret+transaction_id)
    // ) ) 建议接入
    log.warn("异步通知参数");
    log.warn("transactionId= {}", transactionId);
    log.warn("contractId = {}", contractId);
    log.warn("resultCode = {}", resultCode);
    log.warn("resultDesc = {}", resultDesc);
    log.warn("timestamp = {}", timestamp);
    log.warn("msgDigest = {}", msgDigest);
    try {
      String msgDigestSelf = new String(FddEncryptTool.Base64Encode(FddEncryptTool
          .sha1(appId + FddEncryptTool.md5Digest(timestamp) + FddEncryptTool.sha1(secret + transactionId)).getBytes()));
      if (!StringUtils.equals(msgDigestSelf, msgDigest)) {
        log.warn("校验失败! {}", msgDigest);
        return;
      }
    } catch (Exception e) {
      log.error("{}", e);
    }
    // TODO 根据transactionId 判断是客户签署还是公司签署,回写当前合同签署状态.
    TblContractPre entity = tblContractPreService.findByDeedsn(contractId);
    if ((entity != null) && (StringUtils.isNotBlank(entity.getTransactionId()))) {
      if (transactionId.equals(entity.getTransactionId())) { // 客户签署
        tblContractPreService.SignSuccess(contractId);
      }
    }
  }

2.用postMan测试

后台springMVC用request.getParameter()获取请求参数的话,在postman发送请求时,body选取x-www-form-urlencoded,Headers部分是key: Content-Type----------value: application/x-www-form-urlencoded。

当然,也可以使用其他方式获取请求参数如@RequestBody 实体类 实体变量名来自动封装请求参数到实体中,如用post请求方式发送请求,参数是json格式,那么Header的值要选application/json;charset=utf-8

 

posted @   小草1234  阅读(3911)  评论(0编辑  收藏  举报
编辑推荐:
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
阅读排行:
· Blazor Hybrid适配到HarmonyOS系统
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 分享4款.NET开源、免费、实用的商城系统
· 解决跨域问题的这6种方案,真香!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库
点击右上角即可分享
微信分享提示