@RestController
@RequestMapping
public class TestController {
@Autowired
private RestTemplate restTemplate;
@GetMapping({"/test"})
public Object easyNVRChannels(@RequestParam("ip") String ip, @RequestParam("username") String username, @RequestParam("password") String password) {
String login = "http://" + ip + ":10800/api/v1/login?username=" + username + "&password=" + password;
JSONObject easyNVr = this.restTemplate.getForEntity(login, JSONObject.class, new Object[]{0}).getBody();
String token = easyNVr.getJSONObject("EasyDarwin").getJSONObject("Body").getString("Token");
String url = "http://" + ip + ":10800/api/v1/getchannelsconfig";
JSONObject nVRChannels = this.requestUtils(url, token);
return nVRChannels;
}
public JSONObject requestUtils(String url, String token) {
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.add("Cookie", "token=" + token);
MultiValueMap<String, String> map = new LinkedMultiValueMap();
HttpEntity<MultiValueMap<String, String>> request = new HttpEntity(map, headers);
String params = "";
ResponseEntity<JSONObject> response = this.restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class, params);
JSONObject nVRChannelsStatus = response.getBody();
return nVRChannelsStatus;
}
}