@XxlJob("restJobHandler") public void restJobHandler() throws Exception { String param = XxlJobHelper.getJobParam(); if (param==null || param.trim().length()==0) { XxlJobHelper.log("param["+ param +"] invalid."); XxlJobHelper.handleFail(); return; } String[] httpParams = param.split("\n"); String url = null; String method = null; String data = null; for (String httpParam: httpParams) { if (httpParam.startsWith("url:")) { url = httpParam.substring(httpParam.indexOf("url:") + 4).trim(); } if (httpParam.startsWith("method:")) { method = httpParam.substring(httpParam.indexOf("method:") + 7).trim().toUpperCase(); } if (httpParam.startsWith("data:")) { data = httpParam.substring(httpParam.indexOf("data:") + 5).trim(); } } // param valid if (url==null || url.trim().length()==0) { XxlJobHelper.log("url["+ url +"] invalid."); XxlJobHelper.handleFail(); return; } if (method==null || !Arrays.asList("GET", "POST").contains(method)) { XxlJobHelper.log("method["+ method +"] invalid."); XxlJobHelper.handleFail(); return; } HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_JSON_UTF8); HttpEntity httpEntity = new HttpEntity<>(headers); StringBuffer stringBuffer = new StringBuffer(); String substring = data.substring(1, data.length() - 1); String s1 = substring.replaceAll("\"", ""); String s2 = s1.replaceAll(":", "="); String[] datas = s2.split(","); int num = 1; if (datas.length>0){ for (String s : datas) { if (num == 1){ stringBuffer.append("?"); } stringBuffer.append(s); num++; if (num <= datas.length){ stringBuffer.append("&"); } } } String string = stringBuffer.toString(); String body = null; ResponseEntity<String> exchange = null; if (method.equals("GET")){ exchange = restTemplate.exchange(url+string, HttpMethod.GET, httpEntity, String.class); }else { exchange = restTemplate.exchange(url+string, HttpMethod.POST, httpEntity, String.class); } if (exchange != null){ body = exchange.getBody(); logger.info(body); } }