概述
最近看项目,方面大佬们都喜欢用RestTemplate去发送http报文,在此记录下,方便下次使用
这里只举get和post例子。
get例子。
程序运行截图如下:
后台:
源码如下:
这里要先配置下config
代码如下:
package cn.it1995.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;
@Configuration
public class AppConfig {
@Bean
public RestTemplate restTemplate(){
return new RestTemplate();
}
}
get方式源码如下:
MyController.java
package cn.it1995.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
@RestController
public class MyController {
@Autowired
private RestTemplate restTemplate;
@GetMapping("/getMsg")
public Object sendMsg(@RequestParam("msg") String msg){
ResponseEntity<String> forEntity = restTemplate.getForEntity(msg, String.class);
System.out.println("------------head start------------");
System.out.println(forEntity.getHeaders());
System.out.println("------------head end------------");
System.out.println("------------body start------------");
System.out.println(forEntity.getBody());
System.out.println("------------body end------------");
System.out.println("nn");
return null;
}
}
下面是另外一个开源程序的例子,在此我直接贴下代码,post请求
@PostMapping("/loginByQQ")
public Object loginByQQ(String token, HttpServletResponse response, HttpServletRequest request){
MultiValueMap<String, Object> paramMap = new LinkedMultiValueMap();
paramMap.add("token", token);
ResponseEntity<Object> objectResponseEntity = restTemplate.postForEntity("http://127.0.0.7:8081/getLoginInfo", paramMap, Object.class);
Object body = objectResponseEntity.getBody();
String uuid = CookieUtil.setLoginCookie(request, response);
//json标准化
String newJson = body.toString().replace("=", ":");
System.out.println(newJson);
Map map = JSON.parseObject(newJson, Map.class);
Map data = JSON.parseObject(map.get("data").toString(), Map.class);
user.put(uuid, data);
return Result.success();
}
最后
以上就是轻松路灯为你收集整理的Java笔记-使用RestTemplate发送http数据包(get与post)的全部内容,希望文章能够帮你解决Java笔记-使用RestTemplate发送http数据包(get与post)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复