这篇“Springboot HTTP怎么调用其他服务”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Springboot HTTP怎么调用其他服务”文章吧。
1.1Client代码
import com.alibaba.fastjson.JSON;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import org.springframework.web.util.UriComponentsBuilder;
import java.net.URI;
import java.util.HashMap;
import java.util.Map;
@Service
public class UserInfoClient {
public String getUserTotalAmount(){
Map<String,String> map=new HashMap<String,String>();
map.put("name","123");
map.put("password","123");
URI uri = UriComponentsBuilder.fromHttpUrl("http://localhost:8081/spring/test")
.queryParam("jsonString",JSON.toJSONString(map))
.queryParam("token","12122222111")
.build().encode().toUri();
RestTemplate restTemplate=new RestTemplate();
String data=restTemplate.getForObject(uri,String.class);
System.out.println(data);
return null;
}
public static void main(String[] args){
UserInfoClient c=new UserInfoClient();
c.getUserTotalAmount();
}
}
1.2 Service 代码
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping(value = "/spring")
public class Test {
@RequestMapping(value = "/test",method = RequestMethod.GET)
public String testSpringBoot(@RequestParam String jsonString,@RequestParam String token){
System.out.println(jsonString);
System.out.println(token);
/*
*逻辑处理
*/
return "Spring Boot 测试成功!";
}
}
2.1Client代码
import com.alibaba.fastjson.JSON;
import org.springframework.http.*;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import java.util.HashMap;
import java.util.Map;
@Service
public class UserInfoClient {
public String getUserTotalAmount(){
Map<String,String> map=new HashMap<String,String>();
map.put("name","123");
map.put("password","123");
String url="http://localhost:8081/spring/test";
//设置请求头信息
HttpHeaders headers = new HttpHeaders();
MediaType type = MediaType.parseMediaType("application/json; charset=UTF-8");
headers.setContentType(type);
headers.add("Accept", MediaType.APPLICATION_JSON.toString());
//设置body部分
HttpEntity<String> entity = new HttpEntity<String>(JSON.toJSONString(map),headers);
RestTemplate restTemplate=new RestTemplate();
ResponseEntity<String> result = restTemplate.exchange(url, HttpMethod.POST, entity, String.class);
System.out.println(result.getBody());
return null;
}
public static void main(String[] args){
UserInfoClient c=new UserInfoClient();
c.getUserTotalAmount();
}
}
2.2 Service代码
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping(value = "/spring")
public class Test {
@RequestMapping(value = "/test",method = RequestMethod.POST)
public String testSpringBoot(@RequestBody UserBean userBean){
System.out.println(userBean);
/*
*逻辑处理
*/
return "Spring Boot 测试成功!";
}
}
//注入
@Autowired
private RestTemplate restTemplate;
@RequestMapping("/FaceInfo")
@ResponseBody
public Object faceInfo(String startTime,String endTime,Integer size ){
String apiURL = "http://www.05un.cn/wspp/GceGroups";
HttpHeaders headers = new HttpHeaders();
headers.add("userId","38");
// headers.set("userId","38");
headers.setContentType(MediaType.APPLICATION_JSON);
Map<String, Object> requestParam = new HashMap<>();
HttpEntity<Map<String, Object>> request = new HttpEntity<Map<String, Object>>(requestParam, headers);
ResponseEntity<String> entity2 = restTemplate.exchange(apiURL, HttpMethod.GET, request, String.class);
String body = entity2.getBody();
return body;
}
//注入
@Autowired
private RestTemplate restTemplate;
@RequestMapping("/FaceInfo")
@ResponseBody
public Object faceInfo(String startTime,String endTime,Integer size ){
String apiURL = "http://www.0531yun.cn/wsjc/app/Login";
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
Map<String, Object> requestParam = new HashMap<>();
requestParam.put("loginName", "jnr");
requestParam.put("password", "jn");
HttpEntity<Map<String, Object>> request = new HttpEntity<Map<String, Object>>(requestParam, headers);
String s=request.toString();
ResponseEntity<String> entity2 = restTemplate.exchange(apiURL, HttpMethod.POST, request, String.class);
String body = entity2.getBody();
return body;
}
以上就是关于“Springboot HTTP怎么调用其他服务”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。