博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RestTemplate常用的get和post带参数请求
阅读量:6223 次
发布时间:2019-06-21

本文共 1236 字,大约阅读时间需要 4 分钟。

在RestTemplate提供的方法中,有一个参数就是目标URL,参数是跟在后面的一个数量可变参数,但是在这里就有个问题,这个方法怎么知道我传的参数值是对应在目标接口的哪个参数的呢:

public 
T postForObject(String url, Object request, Class
responseType, Object... uriVariables)

  比如有个url的链接是post方式请求,然后需要提供name和id两个参数,返回值是一个json,然后调用:

JSONObject result = restTemplate.postForObject(url, null, JSONObject.class, "张三", "2");

这里就无法分辨张三是name还是2是name。所以post一般是把参数封装到request里面。

JSONObject msg = new JSONObject();        msg.put("key", "@*2y9$jl");        msg.put("receiver", receiverEcommerceId);        msg.put("title", title);        msg.put("content", content);        HttpHeaders headers = new HttpHeaders();        headers.setContentType(MediaType.APPLICATION_JSON);        HttpEntity request = new HttpEntity(msg.toJSONString(), headers);JSONObject result = restTemplate.postForObject(url, request, JSONObject.class);

get方式带参数:

String url=http://test.com/url?param1={param1}&param2={param2};Map
params = new HashMap<>();params.put("param1", "value1");params.put("param2", "value2");JSONObject mutiData = restTemplate.getForObject(url, JSONObject.class, params);

值得一提的是,如果是把url配置在properties配置文件里面的,sax解析会出错,得把&替换成&amp;

转载于:https://www.cnblogs.com/yangshunxing/p/7274798.html

你可能感兴趣的文章
【DATAGUARD】Data Guard Wait Events
查看>>
(九十七)函数与array对象
查看>>
android 内部文件读取
查看>>
Python 对图片进行人脸识别
查看>>
Go语言简明教程
查看>>
JVM Class字节码之三-使用BCEL改变类属性
查看>>
[JAVA &#183; 初级]:9.Object类提供的常用方法
查看>>
2016年2月问答活跃达人发奖品喽,大家快来领奖!
查看>>
【Android开发】多媒体应用开发-使用SoundPool播放音频
查看>>
Node.js 之对象池
查看>>
Android 随笔—— ConstraintLayout 效率爆表的技巧
查看>>
学习点和面试点
查看>>
自己封装一个可以随意删减 没用的资源文件的工具
查看>>
每一个程序员需要了解的10个Linux命令
查看>>
JobScheduler之超时检查
查看>>
最近找工作面试那些事儿(6月)
查看>>
简单VC内存检测
查看>>
Electron任务栏图标定制分析
查看>>
记一次简书图片403(hexo中简书图片迁移到阿里云oss)
查看>>
vue 2.0 路由切换以及组件缓存源代码重点难点分析
查看>>