java post 多个参数_RestTemplate 发送Post 多个参数请求

MultiValueMap requestEntity = new LinkedMultiValueMap<>();

requestEntity.add("clientFlag", clientFlag);

requestEntity.add("xml", xml);

requestEntity.add("verifyData", strMd5);

String s = REST_TEMPLATE.postForObject("http://10.10.129.19/svsr/Receive.asmx/OrderXML", requestEntity, String.class);

48304ba5e6f9fe08f3fa1abda7d326ab.png

!!

最直接的方法就是 写个类吧!!

可惜了 JAVA 没有  c# 中  匿名类 这个东西啊

var news = new { title="特大喜讯",author="夕阳眼",postdate="3013-10-9",msg="今晚公布"};

补充:

设置请求头:

48304ba5e6f9fe08f3fa1abda7d326ab.png

MultiValueMap postParameters = new LinkedMultiValueMap<>();

postParameters.add("userCode", "291974");

HttpHeaders headers = new HttpHeaders();

headers.add("Content-Type", "application/x-www-form-urlencoded");

HttpEntity> r = new HttpEntity<>(postParameters, headers);

String data= restTemplate.postForObject("http://10.10.12.27:9000/Criteria", r, String.class);

System.out.println(data);

48304ba5e6f9fe08f3fa1abda7d326ab.png

注意:

RestTemplate 会对请求头判断,会更具请求头不通走不同的逻辑。默认是 text/html /*

如果是 application/x-www-form-urlencoded 这个请求头 会对数据镜像 url 编码。

不可以传递 非 字符串类型的数据!!

关于 HttpEntity 这个对象的一点说明

HttpEntity 就是存放 两个字段数据 一个是请求数据 一个是请求头! 从定义上就可以看到 虽然可以 POST 等 提交from 数据 但是好是推荐使用实体类型来传递 HTTP 请求数据。

按 Ctrl+C 复制代码

按 Ctrl+C 复制代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值