浅谈SpringCloud微服务中的Rest及其请求方式
2021-08-20 14:49:33
浏览数 (2459)
一、什么是RestTemplate?
RestTemplate 是一个HTTP客户端,在Spring Cloud的服务调用方使用它我们可以方便的调用HTTP接口,支持GET、POST、PUT、DELETE等方法。
二、四种请求方式
首先注入Bean对象
@Configuration
public class MyConfig {
@Bean
public RestTemplate restTemplate(){
return new RestTemplate();
}
}
2.1 GET请求
- getForObject
@GetMapping("get/{id}")
public CommonResult getUser(@PathVariable Long id) {
CommonResult commonResult
= restTemplate.getForObject(Url + "/user/{1}", CommonResult.class, id);
return commonResult
}
- getForEntity
@GetMapping("/get/{sex}")
public CommonResult getUser(@PathVariable String sex) {
ResponseEntity<CommonResult> entity
= restTemplate.getForEntity(Url + "/user/{女}", CommonResult.class, sex);
if (entity.getStatusCode().is2xxSuccessful()) {
return entity.getBody();
} else {
return new CommonResult("操作失败", 500);
}
}
2.2 POST请求
- postForObject
@PostMapping("/add")
public CommonResult add(@RequestBody User user) {
CommonResult commonResult
= restTemplate.postForObject(Url + "/user/add", user, CommonResult.class);
return commonResult;
}
- postForEntity
@PostMapping("/add")
public CommonResult add(@RequestBody User user) {
CommonResult commonResult
= restTemplate.postForEntity(Url + "/user/add", user, CommonResult.class)
return commonResult.getBody();
}
2.3 PUT请求
@PutMapping("/update")
public CommonResult update(@RequestBody User user) {
restTemplate.put(Url + "/user/update", user);
return new CommonResult("操作成功",200);
}
2.4 DELETE请求
@DeleteMapping("/delete/{id}")
public CommonResult delete(@PathVariable Long id) {
restTemplate.delete(Url + "/user/delete/" + id, null);
return new CommonResult("操作成功",200);
}
以上就是关于SpringCloud微服务中的Rest服务及其几种请求方式的全部内容,更多相关SpringCloud Rest内容,请搜索W3Cschool以前的文章或继续浏览下面的相关文章,也希望大家以后多多支持我们!