RestTemplate进行表单请求,注意要使用MultiValueMap
在对接API的时候,有时候文档中会说,表单提交,这时候就需要用到 MultiValueMap来操作,下面给大家展示一个简单的demo。
MultiValueMap<Object, Object> params= new LinkedMultiValueMap<Object, Object>();
params.add("name",dto.getUser_name());
params.add("cardNo",dto.getCard_no());
params.add("idCard",dto.getId_card());
params.add("phone",dto.getCard_phone());
params.add("bankno",dto.getCard_no());
params.add("orderId",String.valueOf(orderId));
logger.info("获取验证码校验参数:"+JSON.toJSON(params));
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
HttpEntity<MultiValueMap<Object, Object>> requestEntity = new HttpEntity<MultiValueMap<Object, Object>>(params, headers);
String url = getVerificationCodeUrl;
logger.info("获取验证码请求地址为:{}",url);
try {
ResponseEntity<CommonResponse> rsp = restTemplate.exchange(url, HttpMethod.POST, requestEntity, CommonResponse.class);
logger.info("手机号:" + phone + ",获取验证码返回结果:" + JSON.toJSON(rsp));
if (rsp.getStatusCodeValue() == 200){
if ("000".equals(rsp.getBody().getCode())){
logger.info("手机号:"+phone+",验证码发送成功");
}else {
logger.info("手机号:"+phone+",验证码发送失败,"+"失败原因:"+rsp.getBody().getMsg());
return ResponseData.error(rsp.getBody().getMsg());
}
}
}catch (Exception e){
logger.error("请求获取验证码失败",e);
return ResponseData.error();
}
RestTemplate进行表单请求,注意要使用MultiValueMap的更多相关文章
- java如何区分是form表单请求,还是ajax请求
requestType = request.getHeader("X-Requested-With"); if(requestType==null) ...
- Django之--POST方法处理表单请求
上一篇:Django之--MVC的Model 演示了如何使用GET方法处理表单请求,本文讲述直接在当前页面返回结果,并使用更常用的POST方法处理. 一.首先我们修改下page.html <!D ...
- Laravel 更新数据时在表单请求验证中排除自己,检查指定字段唯一性
原文地址:https://moell.cn/article/24 不错的laravel网站 需求场景 修改用户信息时,在表单请求验证中排除当前邮箱所在的记录行,并检查邮箱的唯一性. Laravel版本 ...
- 当有多个form表单请求时如何处理?
问题:当有多个表单请求时如何处理?两种获取form表单 name属性值来区分是哪一个form表单.问题:如何获取name的值呢?<form name="myForm" met ...
- 通过C#的HttpClient模拟form表单请求
post提交表单一般无非是一般text文本和文件类型,如下 <input type="file"/> <input type="text"/& ...
- Laravel 表单验证创建“表单请求”实现自定义请求类
按照文档创建表单请求自定义类以后,调用总是403页面,咨询大佬说: public function authorize() { // 在表单验证类的这个方法这里要返回true,默认返回false,这个 ...
- 在Express 中获取表单请求体数据
在Express 中获取表单请求体数据 获取 GET 请求参数 获取 POST 请求体数据 安装 配置 获取 GET 请求参数 Express 内置了一个 API , 可以直接通过 req.query ...
- [水煮 ASP.NET Web API2 方法论](1-3)如何接收 HTML 表单请求
问题 我们想创建一个能够处理 HTML表单的 ASP.NET Web API 应用程序(使用 application/x-www-form-urlencoded 方式提交数据). 解决方案 我们可以创 ...
- laravel中的表单请求类型和CSRF防护(六)
laravel中为我们提供了绑定不同http请求类型的函数. Route::get('/test', function () {}); Route::post('/test', function () ...
随机推荐
- eclipse中,添加JavaSE帮助文档和源码
- java多线程模拟红绿灯案例
代码Lighter.java: package pack1; /** * 灯线程 * @author Administrator * */ public class Lighter extends T ...
- 面向对象多继承(C3算法)/网络编程
https://www.cnblogs.com/aylin/p/5572104.html 一.面向对象多继承(c3算法) a.有多个父类先找左,再找右,如下示例: class A(object): p ...
- SVG图像学习
参考阮一峰老师: SVG 图像入门教程 基本使用 可以直接放入到html中 <body> <svg viewBox="0 0 800 600" > < ...
- HDU 5974 A Simple Math Problem 数学题
http://acm.hdu.edu.cn/showproblem.php?pid=5974 遇到数学题真的跪.. 题目要求 X + Y = a lcm(X, Y) = b 设c = gcd(x, y ...
- jq中的attr和prop属性
今天在做checkbox的全选等功能时刚开始用的是 $('input[type='checkbox']").attr("checked","true" ...
- GIT GUI克隆github代码
新建一个文件夹,右击gitgui git clone 去掉不要
- Flask 学习系列(一) -登录
Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 .Flask使用 BSD 授权. Flask也被称为 “ ...
- SQL根据出生日期精确计算年龄、获取日期中的年份、月份
第一种: 一张人员信息表里有一人生日(Birthday)列,跟据这个列,算出该人员的年龄 datediff(year,birthday,getdate()) 例:birthday = '2003-3- ...
- 企业CIO、CTO必读的34个经典故事
一. 用人之道 去过庙的人都知道,一进庙门,首先是弥陀佛,笑脸迎客,而在他的北面,则是黑口黑脸的韦陀.但相传在很久以前,他们并不在同一个庙里,而是分别掌管不同的庙.弥乐佛热情快乐,所以来的人非常多,但 ...