RestTemplate带参发送get及post请求携带headers请求头代码示例
一、发送get请求携带headers
@Testpublic void testGetWithHeaders(){HttpHeaders headers = new HttpHeaders();headers.setContentType(MediaType.APPLICATION_JSON);Map<String,Integer> map = new HashMap<String,Integer>();map.put("pageNum",1);map.put("pageSize",15);HttpEntity<MultiValueMap> httpEntity = new HttpEntity<>(null, headers);//get请求String newUrl = "https://xxxxxxx.com:8101/operate/operate_pay/getOperatesPay?pageNum="+1+"&pageSize="+15;ResponseEntity<String> responseEntity = restTemplate.exchange(newUrl, HttpMethod.GET, httpEntity, String.class);String body = responseEntity.getBody();System.err.println(body);}
二、发送get请求不带headers
@Testpublic void testGetWithoutHeaders(){Map<String,Integer> map = new HashMap<String,Integer>();map.put("pageNum",1);map.put("pageSize",15);//get请求String url = "https://xxxxxx.com:8101/operate/operate_pay/getOperatesPay?pageNum={pageNum}&pageSize={pageSize}";ResponseEntity<String> responseEntity = restTemplate.getForEntity(url, String.class, map);String body = responseEntity.getBody();System.err.println(body);}
三、发送post请求携带headers
@Testpublic void testPostWithHeaders(){String url = "https://XXXXX.com:8101/baseinfo/company/setCompany";String json = "{\n" +"\t\"contactAddress\":\"武汉市洪山区邮科院内东区烽火创新谷精密工艺楼5楼5区\",\n" +"\t\"legalName\":\"XXXX\",\n" +"\t\"companyId\":\"XXXXX\",\n" +"\t\"address\":420100,\n" +"\t\"businessScope\":\"网络预约出租汽车客运\",\n" +"\t\"economicType\":\"有限责任(公司)\",\n" +"\t\"companyName\":\"武汉XXXXXX信息科技有限公司\",\n" +"\t\"identifier\":\"XXXXXX\",\n" +"\t\"legalPhone\":\"XXXXXX\",\n" +"\t\"regCapital\":\"1000000.0000万元\",\n" +"\t\"state\":0,\n" +"\t\"flag\":1,\n" +"\t\"legalID\":\"XXXXXXXXXXXXXXX\",\n" +"\t\"updateTime\":20180920111808,\n" +"\t\"legalPhoto\":\"driver/drivelicense1_1524554483.jpg\"\n" +"}";HttpHeaders headers = new HttpHeaders();headers.setContentType(MediaType.APPLICATION_JSON);JSONObject jsonObject = JSONObject.parseObject(json);// Map map =JSONObject.parseObject(json, Map.class);// MultiValueMap<String,Object> multiValueMap = new LinkedMultiValueMap<>();// multiValueMap.setAll(map);HttpEntity httpEntity = new HttpEntity<>(jsonObject,headers);// ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, map, String.class,httpEntity);ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, httpEntity, String.class);System.err.println(responseEntity.getBody());}
四、发送post请求不带headers
@Testpublic void testPostWithoutHeaders(){String url = "https://XXXXX.com:8101/baseinfo/company/setCompany";String json = "{\n" +"\t\"contactAddress\":\"武汉市洪山区邮科院内东区烽火创新谷精密工艺楼5楼5区\",\n" +"\t\"legalName\":\"XXXX\",\n" +"\t\"companyId\":\"42XX01XXXX4LXXX9C\",\n" +"\t\"address\":420100,\n" +"\t\"businessScope\":\"网络预约出租汽车客运\",\n" +"\t\"economicType\":\"有限责任(公司)\",\n" +"\t\"companyName\":\"武汉XXXXXXX信息科技有限公司\",\n" +"\t\"identifier\":\"XXXXXXX\",\n" +"\t\"legalPhone\":\"XXXXXXX\",\n" +"\t\"regCapital\":\"100000.0000万元\",\n" +"\t\"state\":0,\n" +"\t\"flag\":1,\n" +"\t\"legalID\":\"XXXXXXXX\",\n" +"\t\"updateTime\":20180920111808,\n" +"\t\"legalPhoto\":\"driver/drivelicense1_1524554483.jpg\"\n" +"}";Map map = JSONObject.parseObject(json, Map.class);ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, map, String.class);System.err.println(responseEntity.getBody());}
补充:配置类。视情况而选择,也可使用默认的配置。
/**** 内部服务调用者* @author zhangxueliang*/
@Configuration
public class RestTemplateConfig {/*** 适用于服务使用RestTemplate调用外部地址请求* @return*/@Beanpublic RestTemplate restTemplate() {RestTemplate restTemplate = new RestTemplate(clientHttpRequestFactory());return restTemplate ;}/**** 适用于服务内部之间使用RestTemplate相互调用增加Rinbbo机制* 通过服务名方式* @return*/@Bean(name="loadBalancedRestTemplate")@LoadBalancedpublic RestTemplate loadBalancedRestTemplate() {RestTemplate restTemplate = new RestTemplate(clientHttpRequestFactory());return restTemplate ;}private ClientHttpRequestFactory clientHttpRequestFactory() {HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory();factory.setReadTimeout(5000);factory.setConnectTimeout(5000);factory.setConnectionRequestTimeout(5000);return factory;}}
RestTemplate带参发送get及post请求携带headers请求头代码示例相关推荐
- 微信带参二维码数据解析
带参二维码介绍 因为公司要参加一个活动,需要知道在活动场景中有多少人关注了,所以让我负责弄出带参二维码,在负责解析二维码的数据,里面的带参就是指场景值,在创建二维码的时候加进去的,每次扫描关注事件,微 ...
- thymeleaf的初次使用(带参请求以及调用带参js方法)
thymeleaf的初次使用(带参请求以及调用带参js方法) 之前对于前端框架接触较少,第一次接触thymeleaf,虽说看起来并不复杂但我还是花费了好一会儿才弄懂. 话不多少下面就简单说一下我在项目 ...
- response响应对象参数和方法是啥?怎么发送带请求头的请求(headers参数)怎么发送带参数的请求?cookieJar的转换方法是什么?
在python里所有变量都是对象 import requestsurl = 'http://www.baidu.com/'respone = requests.get(url)# 参数 # 响应的ur ...
- python爬虫基础Ⅱ——Ajax数据爬取、带参请求:QQ音乐歌单、QQ音乐评论
文章目录 基础爬虫部分Ⅱ Ajax技术 json 1. Network 2. XHR怎么请求? 3. 什么是json? 4. json数据如何解析? 带参数请求 1. 复习 2. params 3. ...
- vue前端实现从数据库获取数据的下拉框以及带参请求
一.下拉框的实现 <el-form-item><el-select @change="getOptions" v-model="type" p ...
- Vue3(撩课学院)笔记09-axios简介,发起get请求的两种方式,发起带参的get及post请求,发起并发请求,并发请求结果将数组展开,axios全局配置,axios配置及封装,请求和响应拦截
1.axios简介 axios是基于promise可以用于浏览器和node.js的网络请求库,在服务器端使用原生node.js,在浏览气短使用ajax(即XMLHttpRequests) 2.axio ...
- post带参的请求与post不带参数的请求
post不带参数的请求 [{"description": "这是一个post不带参的请求","request": {"uri&qu ...
- 微信小程序 云开发 生成带参小程序码 云函数网络请求(Node.js网络请求)
生成带参小程序码流程 1.小程序端上传生成二维码所需的参数到云函数 2.云函数使用appid和appsecret请求access_token 3.云函数使用access_token + 小程序端上传的 ...
- Java后端带参跨域访问_java后端解决请求跨域
跨域 跨域:指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制. 例如:a页面想获取b页面资源,如果a.b页面的协议.域名.端口.子域名不同 ...
最新文章
- ossim-agent代理和要监控的服务器的配置
- python读取配置文件简单封装
- 使用PyQT编写界面程序
- k8s使用helm打包chart并上传到腾讯云TencentHub
- 双指针法(leetcode分类解题,C++代码详细注释)
- datagrid 完整dom结构
- (回溯4)部分全排列
- mysql建立表间键关系,MySQL外键(表与表之间的关系)
- 【PAT乙】1004 成绩排名 (20分) struct结构
- Security+ 学习笔记13 加密基础
- RAKE接收技术基础知识
- 我的gitbub的学习目录
- 【沙龙干货分享】你要知道的N个Android适配问题
- 数字化给财税行业带来的星星之火
- c语言opencv所用库函数,初窥Opencv
- 谷歌中国首席工程师详解TensorFlow:从入门到不放弃 ‖ PPT
- 360以安全之名做搜索,可信,还是欺世盗名?
- 用数字 5,5,5,1 ,进行四则运算,每个数字当且仅当用一次,要求运算结果值为 24
- 私有IP和公有IP的区别
- Facebook转型
热门文章
- 【NLP】ACL2020 | 词向量性别偏见
- 【深度学习】深度学习模型训练全流程!
- BERT源码分析(PART I)
- 一文看尽10篇目标检测最新论文(SpineNet/AugFPN/LRF-Net/SABL/DSFPN等)
- 深度学习笔记第一门课第一周:深度学习引言
- 364 页 PyTorch 版《动手学深度学习》PDF 开源了(全中文,支持 Jupyter 运行)
- [Vue.js]跨域访问四种解决方法
- mysql物理备份工具Xtrabackup安装配置
- 如何选择合适的数据库,让游戏更高效可用
- 使用XDebug和WinCacheGrind分析PHP性能