Размещение объекта массива в теле JSON

Я использую Rest Assured для тестирования API. Как отправить объекты массива в POST? Для простой строки я знаю, что могу сделать что-то вроде этого

JSONObject json = new JSONObject();
json.put("firstname", "John"));
json.put("lastname", "James");
request.body(json.toJSONString());
request.post("/my/post/url/end/point");

Как отправить такой объект с помощью JSONObject и Rest Assured?

{
    "price": "234",
    "phoneNumber": "09022334422",
    "owner": [{
        "digits": "1122334455",
        "myname": "Abisoye Haminat",
        "code": "058",
        "default": "true"
    }]
}

предполагая, что у меня нет ключа, применим ли приведенный ниже ответ?

Bharadwaj Pendyala 09.12.2019 08:04
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
1
2 925
1

Ответы 1

Чтобы отправить массив, вы можете использовать JSONArray:

JSONObject jsonObjectToPost = new JSONObject();

JSONArray array = new JSONArray();

JSONObject arrayItem = new JSONObject();

arrayItem.put("code","058");
arrayItem.put("default", "true");

array.put(arrayItem.toString());

jsonObjectToPost.put("owner", array.toString())

array.put () для JSONArray не существует, вам нужно использовать array.add () вместо array.put ()

Bharadwaj Pendyala 09.12.2019 08:01

Другие вопросы по теме