API удаления JAVA с массивом String - PullRequest
0 голосов
/ 04 декабря 2018

Заранее извините за мой английский в Google, я работаю с API и создаю программное обеспечение JAVA, которое позволяет его использовать.Мне нужно сделать УДАЛЕНИЕ и программное обеспечение.Я должен выполнить удаление, и с помощью прилагаемого программного обеспечения для тестирования API мне показывают, что мне нужно добавить строку в теле, чтобы удалить его, например: ["email", "Termine", "13/03/ 2018 09:52:20 "и т. Д. ..." "".Тело должно содержать строковый массив со всем содержимым строки, которую нужно удалить.Я могу заставить его работать в тестовом программном обеспечении.

Однако я не могу понять, как сделать УДАЛЕНИЕ с JAVA.Я могу заставить его работать в тесте программного обеспечения.Вот что я сделал сейчас:

 public static  String delete(String json, String nomUrl) throws IOException {
    URL url = new URL(baseUrl + "survey/"+ nomUrl + "/data");
    //String json = "[\"Marc@Houdijk.nl\",\"Contacte\",\"10/04/2018 11:30:05\",\"Avoriaz\",\"Office de Tourisme\",\"Accueil OT\",\"Neerlandais\",\"Semaine 6\",\"Periode 2\",\"16\",\"\",\"Hiver 2018\",\"BJBR-CDQB\",\"04/12/2018 14:15:13\",\"04/12/2018 14:15:13\",\"04/12/2018 14:15:13\",\"\",\"Direct\",\"\",\"\",\"\"]\n";
    HttpURLConnection con = (HttpURLConnection) url.openConnection();
    con.setRequestMethod("DELETE");
    con.setRequestProperty("Content-Type","application/json");
    con.setRequestProperty("Accept","application/json");
    con.setRequestProperty("Authorization","Bearer "+token);

    con.setDoOutput(true);
    DataOutputStream wr = new DataOutputStream(con.getOutputStream());
    wr.writeBytes(json);
    wr.flush();
    wr.close();

    int responseCode = con.getResponseCode();
    StringBuilder responce = new StringBuilder();
    responce.append("\\nSending 'DELETE' request to URL : ").append(url);
    responce.append("\nResponse Code : ").append(responseCode);

    BufferedReader in = new BufferedReader(
            new InputStreamReader(con.getInputStream()));
    String inputLine;

    while ((inputLine = in.readLine()) != null) {
        responce.append("\n").append(inputLine);
    }
    in.close();

    return responce.toString();
}

Я был вдохновлен тем, что я сделал для поста и получения.Но я не вижу, как правильно добавить тело с моим String Array к моей функции удаления, потому что это не работает, и интернет не помог мне ... Заранее спасибо за вашу помощь!

РЕДАКТИРОВАТЬ: Наконец, мой код работает.Так что если вы хотите удалить с телом, вы можете использовать этот код.Однако проблема исходит от json: я француз, поэтому были некоторые акценты в моих словах и специальных символах.После очистки моей строки все работает.

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

РЕДАКТИРОВАТЬ: Наконец, мой код работает.Так что если вы хотите удалить с телом, вы можете использовать этот код.Однако проблема исходит от json: я француз, поэтому были некоторые акценты в моих словах и специальных символах.После очистки моей строки все работает.

0 голосов
/ 06 декабря 2018

Вы можете создать класс POJO с полями, требуемыми RequestBody, и отправить его в API, сериализуя объект (сериализация означает преобразование объектов Java в JSON, и это можно сделать с помощью библиотеки GSON).на стороне API вы можете легко получить ArrayList или что угодно, просто нужно создать тот же класс POJO и на стороне сервера, RequestBody десериализует этот JSON в соответствующий класс, теперь через объект этого класса вы можете получить любые переменные, которые захотите.Надеюсь, это поможет.

...