CURL УДАЛИТЬ на Java - PullRequest
       12

CURL УДАЛИТЬ на Java

0 голосов
/ 25 апреля 2018

Я использую команду "curl -X DELETE --header 'Accept: application / json' 'http://10.10.1.29:8181/onos/v1/flows/application/olsrflow' -u karaf: karaf"

Может работать.

но использовать код JAVA не работает.

есть какие-либо проблемы в моем коде JAVA?

     URL dc0ContrailUrl2 = new URL("http://10.10.1.29:8181/onos/v1/flows/application/olsrflow");
     HttpURLConnection dcConn2 = (HttpURLConnection) dc0ContrailUrl2.openConnection();
     dcConn2.setDoOutput(true);
     String login = "karaf:karaf";
     String content = URLEncoder.encode (login) ;
     String basicAuth = "Basic " + new String(new Base64().encode(login.getBytes()));
     dcConn2.setRequestProperty("Authorization",basicAuth);
     dcConn2.setRequestProperty("Content-Type", "application/json");
     dcConn2.setRequestMethod("DELETE");
     BufferedReader in2 = new BufferedReader(new InputStreamReader(dcConn2.getInputStream()));

     String inputLine2;

 while ((inputLine2 = in2.readLine()) != null){ //while response is not null, assign response to inputLine and print inputLine
         System.out.println(inputLine2); 
 }
         in2.close();

ошибка HTTP код ответа: 415

Ответы [ 2 ]

0 голосов
/ 25 апреля 2018

Вы не добавили тип Accept так же, как curl.Добавьте следующую строку и удалите Content-Type:

 dcConn2.setRequestProperty("Accept", "application/json");
0 голосов
/ 25 апреля 2018

Обычно это означает, что сервер не поддерживает MediaType. Вы должны выяснить, чего он ожидает, и соответственно настроить его в своем запросе.

...