Java中restTemplate携带Header请求

描述

作者: 代码的路, 欢迎大家关注公众号

RestTemplate是Spring提供的用于发送HTTP请求的客户端工具。

现在我们要在Java中使restTemplate携带Header请求。

创建请求

创建请求头:

Map

创建请求体:

HttpHeaders requestHeader = new HttpHeaders();
requestHeader.add("cookie", "cookie");
requestHeader.add("userInfo", "{userId:101,userName:userName}");

创建请求方式:

HttpEntity

POST请求

restTemplate发送POST请求时可以通过如下方法获取ResponseEntity

ResponseEntity responseEntity = restTemplate.postForEntity(url, httpEntity, JSONObject.class);

或用以下方法获取jsonObject

JSONObject jsonObject = restTemplate.postForObject(url, httpEntity, JSONObject.class);

GET请求

GET请求没有相应的方法,只能用exchange方法获取ResponseEntity

ResponseEntity

若出现如下报错:

Not enough variables available to expand

则是因为RestTemplate认为大括号{}为占位符,需要将请求头中的{userId:101,userName:userName}改为{\\"userId\\":\\"101\\",\\"userName\\":\\"userName\\"}

学习更多[编程]知识,请关注我的公众号:

[代码的路]

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分