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

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

  1. Servlet | HttpServletRequest接口、通过request接口获取请求参数

    目录 一:HttpServletRequest接口 二:通过request接口获取请求参数 一:HttpServletRequest接口 (1)HttpServletRequest是一个接口,全限定名 ...

  2. Request(请求继承体系,获取请求行,请求头,请求体和通用的获取请求数据和解决乱码问题)

    Request(请求继承体系,获取请求行,请求头,请求体和通用的获取请求数据和解决乱码问题) 1.Request(请求) Request继承体系 要想了解RequestFacade中都提供了哪些方法, ...

  3. 【Servlet】request对象获取请求头数据和用户数据

    request对象学习 /*** request对象学习:* 作用:request对象中封存了当前请求的所有请求信息* 使用:* 获取请求头数据* req.getMethod();//获取请求方式* ...

  4. setCharacterEncoding 是在request.getParameter获取参数之前 设置request的编码格式 一步到位...

    setCharacterEncoding 是在request.getParameter获取参数之前 设置request的编码格式 一步到位 转载于:https://www.cnblogs.com/cl ...

  5. 当FORM的ENCTYPE=quot;multipart/form-dataquot; 时request.getParameter()获取不到

    当FORM的ENCTYPE="multipart/form-data" 时request.getParameter()获取不到值. 解决方法: 提交普通表单时,在提交前: $(&q ...

  6. request如何获取请求路径方法

    request如何获取请求路径方法 request对象中包含的是请求信息,当我们在浏览器地址栏上输入: http://localhost:8080/Example/AServlet?username= ...

  7. request.getParameter()获取不到数据的问题

    最近做项目时,发现手机客户端通过http协议post方式上传数据到服务端,在服务器端通过request.getInputStream()能获取到相应的数据,但用request.getParameter ...

  8. service和doXX方法区别、Http请求头案例、获取请求的传递参数

    一.service和doXX方法区别: 1.注意:tomcat服务器首先会调用servlet的service方法,然后在service方法中再根据请求方式来分别调用对应的doXX方法. 2.例如,如果 ...

  9. vue fromData提交表单(文件)的同时 axios通过将token封装一起发送,Springboot后端拦截器通过request.getParameter获取,Redis验证token

    一.前端: 1.在封装好的axios接口: import axios from 'axios'axios.defaults.withCredentials = true;// 允许跨域携带cookie ...

最新文章

  1. 【 Laravel 】日 常 整 理 记 录 分 享
  2. 开始看 汇编语言程序设计
  3. Oracle顶级认证OCM考试实战总结
  4. 【搜索引擎基础知识1】搜索引擎基本架构
  5. 学习 shell —— 编写基本脚本
  6. iPhone新机或全部采用OLED屏:日本JDI股价应声下跌
  7. 微课|玩转Python轻松过二级:第3章课后习题解答1
  8. Maven 配置使用小技巧
  9. 20+个很棒的Android开源项目
  10. java实现杨辉三角
  11. 传输线路动态巡检探索
  12. mpls工作原理通俗解释_MPLS的工作原理
  13. 美年旅游_套餐管理_分页PageHelper
  14. TOEFL wordlist 25
  15. 认识Power BI
  16. Opencv实现颜色检测
  17. Pascal小游戏 俄罗斯方块怀旧版
  18. Photoshop设计一款Iphone风格导航菜单教程
  19. 挑战程序设计竞赛——详解DFS及BFS
  20. 使用多个路由器有线桥接实现无线漫游/Lan口连接

热门文章

  1. 解析equals(Object obj)和compareTo(T obj)
  2. Docker 宿主机定时清除容器的运行日志
  3. 【完结】利用 Composer 完善自己的 PHP 框架(三)——Redis 缓存
  4. 【飞行术】Web2.0如何改变电信业
  5. RDIFramework.NET ━ 9.8 用户权限管理 ━ Web部分
  6. ORACLE 体系结构知识总结
  7. 【强烈推荐】国土档案管理信息系统产品使用说明书系列目录【附下载地址】...
  8. distinct吃亏记
  9. Nagios插件NDOUtils安装
  10. 上周新闻回顾:微软补丁个个紧急 奥运网络百花齐放