Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Функции для работы с HTTP

http.

...

sendRequest(url string, method string,

...

body any = nil, headers Map = nil)

...

Response

Назначение: отправляет HTTP запрос на указанный URL. 

...

  1. url - URL адрес на который будет оправлен запрос.
  2. method - HTTP метод. Допустимые значения: GET, POST, PUT, DELETE, PATCH, HEAD и OPTIONS.
  3. params body - параметры тело запроса. Могут быть представлены как списком так и Может быть представлено скалярным значением, списком или ассоциативным массивом.
  4. headers - HTTP заголовки запроса. По умолчанию устанавливается заголовок Content-Type: application/json. 

Возвращаемое значение: HTTP ответ на запрос в виде ассоциативного массива со следующими  ключами: statusCode - HTTP код ответа, body - тело ответа (преобразованное в соответствии с заголовком Content-Type),  headers - HTTP заголовки ответа в виде ассоциативного массива, exception - текст ошибки или nil если запрос прошёл без ошибок.  объект HTTP ответа.

Блок кода
languagephp
// Выполняем запрос на получение списка юзеров
$response = http.request("https://iam.twin24.ai/api/v1/users", "GET", {"limit": 15, "offset": 5}, {"Authorization": "Bearer authToken"})

// Извлекаем информацию о запросе
$statusCode = $response.get("statusCode")
$body = $response.get("body")
$headers = $response.get("headers")
$exception$error = $response.error

http.

...

request(url string = "", method string = "POST", body any = nil) Request

Назначение: формирует новый объект HTTP запроса.

Аргументы:

  1. url - строка URL.
  2. method - название HTTP метода.
  3. body - содержимое тела запроса.

Возвращаемое значение: объект содержащий информацию о HTTP запросе.

Блок кода
languagephp
$response = http.request("https://some.url", "POST", {"param1": 123, "param2": true}).
                 headers({"Content-Type": "application/json"}).
                 timeout(300).
                 send("exception")

// Можно извлечь так
{"statusCode": $statusCode, "body": $body, "headers": $headers, "exception": $exception} = $response

// Или даже так (тут важен порядок перечисления переменных)
($statusCode, $body, $headers, $exception) = $response
// или
[$statusCode, $body, $headers, $exception] = $response

// получаем общее количество юзеров и их список
$userCount = $body.get("count")
$userList = $body.get("items")

Объект Request

timeout(timeout int) Request

...