api.http Формирование запросов к JSON сервисам
-
api.http.postJSON(url, data)
api.http.postJSON(url, data, headers)
JSON-запрос к внешнему сервису методом HTTP (POST).
Метод ожидает ответ в формате JSON от внешнего сервиса. Максимальное время ожидания ответа от ресурса — 5 сек. Ожидаемая кодировка содержимого — UTF-8.
Параметры:
- url — адрес ресурса. URL должен быть в URL-закодированном виде;
- data — ассоциативный список параметров запроса, которые передаются в теле запроса, преобразуясь в JSON перед отправкой. Допускаются параметры типов: String, Integer (Int), Float, Double, Boolean;
- headers — заголовки запроса (Map<String, String>), если заголовков нет, то null.
Возвращает:
- Ассоциативный список содержащий JSON-данные ответа сервиса.
- Если сервер ответил строкой {'test':'done'}, то метод вернет ассоциативный список следующего содержания ['test':'done'].
- Если сервер ответил строкой [{"test":"done"}], то метод вернет ассоциативный список следующего содержания [0:['test':'done']].
Пример 1. В теле запроса будет передана строка {key:value}:
api.http.postJSON('http://ya.ru', ['key':'value'])
Пример 2. В теле запроса будет передана строка {key:value}. В заголовке запроса будет передана строка {key:value}:
api.http.postJSON('http://ya.ru', ['key':'value'], ['key': "value])
-
api.http.putJSON(url, data, headers)
JSON-запрос к внешнему сервису, методом HTTP (PUT).
Метод ожидает ответ в формате JSON от внешнего сервиса. Максимальное время ожидания ответа от ресурса — 5 сек. Ожидаемая кодировка содержимого — UTF-8.
Параметры:
- url — адрес ресурса. URL должен быть в URL-закодированном виде;
- data — ассоциативный список параметров запроса, которые передаются в теле запроса, преобразуясь в JSON перед отправкой. Допускаются параметры типов: String, Integer, Float, Double, Boolean;
- headers — ассоциативный список заголовков запроса (Map<String, String>), если заголовков нет, то null.
Возвращает:
- Ассоциативный список содержащий JSON-данные ответа сервиса.
- Если сервер ответил строкой {'test':'done'}, то метод вернет ассоциативный список следующего содержания ['test':'done'].
- Если сервер ответил строкой [{"test":"done"}], то метод вернет ассоциативный список следующего содержания [0:['test':'done']].
Пример. В теле запроса будет передана строка {key:value}:
api.http.putJSON('http://ya.ru', ['key':'value'], null)
-
api.http.getJSON(url)
api.http.getJSON(url, headers)
Запрос к внешнему сервису, методом HTTP (GET).
Метод ожидает ответ в формате JSON от внешнего сервиса. Максимальное время ожидания ответа от ресурса — 5 сек. Ожидаемая кодировка содержимого — UTF-8.
Параметры:
- url — адрес ресурса. URL должен быть в URL-закодированном виде;
- headers — заголовки запроса (Map<String, String>), если заголовков нет, то null.
Возвращает:
- Ассоциативный список содержащий JSON-данные ответа сервиса.
- Если сервер ответил строкой {'test':'done'}, то метод вернет ассоциативный список следующего содержания ['test':'done'].
- Если сервер ответил строкой [{"test":"done"}], то метод вернет ассоциативный список следующего содержания [0:['test':'done']].
Пример:
api.http.getJSON('http://ip.jsontest.com')
-
api.http.patchJSON(url, data, headers)
Запрос к внешнему сервису, методом HTTP (PATCH).
Параметры:
- url — адрес ресурса. URL должен быть в URL-закодированном виде;
- data — ассоциативный список параметров запроса, которые передаются в теле запроса, преобразуясь в JSON перед отправкой. Допускаются параметры типов: String, Integer, Float, Double, Boolean;
- headers — заголовки запроса (Map<String, String>), если заголовков нет, то null.
Возвращает:
- Ассоциативный список содержащий JSON-данные ответа сервиса.
- Если сервер ответил строкой {'test':'done'}, то метод вернет ассоциативный список следующего содержания ['test':'done'].
- Если сервер ответил строкой [{"test":"done"}], то метод вернет ассоциативный список следующего содержания [0:['test':'done']].
Пример. В заголовке запроса будет передана строка {key:value}. В заголовке запроса будет передана строка {key:value}:
api.http.patchJSON('http://ip.jsontest.com', ['key': "value], ['key': "value])
-
api.http.deleteJSON(url, headers)
Запрос к внешнему сервису, методом HTTP (DELETE).
Параметры:
- url — адрес ресурса. URL должен быть в URL-закодированном виде;
- headers — заголовки запроса (Map<String, String>), если заголовков нет, то null.
Возвращает:
- Ассоциативный список содержащий JSON-данные ответа сервиса.
- Если сервер ответил строкой {'test':'done'}, то метод вернет ассоциативный список следующего содержания ['test':'done'].
- Если сервер ответил строкой [{"test":"done"}], то метод вернет ассоциативный список следующего содержания [0:['test':'done']].
Пример. В заголовке запроса будет передана строка {key:value}:
api.http.deleteJSON('http://ip.jsontest.com', ['key': "value], ['key': "value])
-
api.http.createHttpBuilderClient(url)
Создает HttpBuilder с учетом доверенных сертификатов из локального хранилища и из cacerts.
Параметр:
- url — адрес ресурса. URL должен быть в URL-закодированном виде.
Возвращает HttpBuilder для работы с http сервером.
Пример:
Copydef httpClient = api.http.createHttpBuilderClient("https://vc.sd.naumen.ru/");
httpClient.get(
contentType : '*/*'
)