curl命令调用接口
生活随笔
收集整理的這篇文章主要介紹了
curl命令调用接口
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、post請求
- 參數是請求體 @RequestBody
| curl -H "Authorization:Bearer 5d3d3101-881f-4219-bfdf-b69540f960ba" -H "Content-Type:application/json;charset=UTF-8" -XPOST http://ip:port/addxxx -d '{"task_sn":"VG21","business_system_id":"xxx","vuln_info":[{"vuln_id":"123","vuln_title":"title"}]}' |
?
?
public String getToken() {String alarmRiskAddress="http://ip:port";String getRiskToken="/xxxx/token";JSONObject jsonObject=new JSONObject();jsonObject.put("type","basic");jsonObject.put("clientId", "xxx_api");jsonObject.put("clientSecret", "xxx_api");HttpHeaders headerss = new HttpHeaders();String json=jsonObject.toJSONString();RestOperations restTemplate = new RestTemplate();((RestTemplate) restTemplate).setErrorHandler(new DefaultResponseErrorHandler() {@Override// Ignore 400public void handleError(ClientHttpResponse response) throws IOException {if (response.getStatusCode() != HttpStatus.BAD_REQUEST) {super.handleError(response);}}});headerss.add("Content-Type", "application/json;charset=UTF-8");String result = null;String url = "%s%s";try {result = restTemplate.postForEntity(new URI(String.format(url, alarmRiskAddress,getRiskToken)),new HttpEntity<String>(json, headerss),String.class).getBody();} catch (URISyntaxException e) {logger.info(e.getMessage()+"======+++++");}JSONObject object=(JSONObject) JSONObject.parseObject(result);;Map<String,String> data = (Map<String,String>)object.get("data");String token=data.get("accessToken");return token;}- 參數是請求參數 @RequestParam
| 不帶token信息: curl –d"grant_type=client_credentials&client_id=xxx_api&client_secret=xxx_api&scope=cloud" http://ip:port/oauth/token |
?
?
| 沒有參數(帶token信息): curl -H "Content-Type:application/json" -H "Authorization:Bearer d42448bf-b9b5-4684-bce2-66e925641ba7"? http://ip:port/xxx |
?
?
| 一個參數(帶token信息): curl -H "Authorization:Bearer 971d025d-9231-4935-a939-5dd1957c59c2" -H "Content-Type:application/json;charset=UTF-8" -XPOST http://ip:port/xxxx?processInstanceId=0ef0ef46-c0f6-11ea-933f-5254004b7a31 |
?
?
| 多個參數(帶token信息): curl -d "taskId=b89143d5-d217-11ea-9273-52540072a985&userId=554" "http://ip:port/xxxx" -H "Authorization:Bearer 971d025d-9231-4935-a939-5dd1957c59c2" |
?
?
?
public void testLogin() {MultiValueMap<String, String> formData = new LinkedMultiValueMap<String, String>();formData.add("username", "admin");formData.add("password", "123456");formData.add("grant_type", "password"); //密碼模式formData.add("client_id", "xxxcloud_web");formData.add("client_secret", "xxxcloud_web");formData.add("scope", "web");HttpHeaders headers = new HttpHeaders();Map map = restTemplate.exchange("http://ip:port/oauth/token", HttpMethod.POST,new HttpEntity<MultiValueMap<String, String>>(formData, headers), Map.class).getBody();System.out.println(map);}二、Get請求
| curl --header 'ak: MFwEAAQ==' \ --header 'env: test' \ --header 'Content-Type: application/json' \ -X GET \ -v http://ip:port/systemList?business_system_id=PBX\&priOrpub=3\&offset=1\&pageSize=10 |
?
?
?
public String riskTotalInformation(String token) {String alarmRiskAddress="http://ip:port";String riskTotalInformation="/xxxx/xxxx";String authorization = String.format("Bearer %s", token);HttpHeaders headers = new HttpHeaders();headers.add("Authorization", authorization);headers.add("Content-Type","application/json;charset=utf-8");MultiValueMap<String, String> formData = new LinkedMultiValueMap<String, String>();RestOperations restTemplate = new RestTemplate();((RestTemplate) restTemplate).setErrorHandler(new DefaultResponseErrorHandler() {@Override// Ignore 400public void handleError(ClientHttpResponse response) throws IOException {if (response.getStatusCode() != HttpStatus.BAD_REQUEST) {super.handleError(response);}}});String url = "%s%s";String result = null;try {result = restTemplate.exchange(String.format(url, alarmRiskAddress,riskTotalInformation), HttpMethod.GET,new HttpEntity<MultiValueMap<String, String>>(formData, headers), String.class).getBody();} catch (Exception e) {e.printStackTrace();}logger.info(result);return result;}現在,Get請求和Post請求 清楚明了了!!!
總結
以上是生活随笔為你收集整理的curl命令调用接口的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Kaldi:从零搭建语音识别系统
- 下一篇: oracle手机号码检验字数_oracl