class for
Основной класс для управления набором параметров HTTP-запроса и формирования строки URL-данных.
Сообщите нам, если считаете, что материал размещён без разрешения.
Обращение по товару «request_data.mqh» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
Данная библиотека представляет собой вспомогательный класс RequestData для формирования данных HTTP-запросов в среде MQL. Она позволяет удобно управлять набором параметров (пар «имя—значение») и преобразовывать их в строку формата URL-запроса (например, par_1=foo&par_2=bar). Класс предназначен для совместной работы с библиотекой requests.mqh.
Основные возможности: добавление пар параметров с автоматическим обновлением значения при повторном добавлении с тем же именем, удаление отдельных пар или полная очистка всех данных, а также преобразование набора пар в строку для использования в URL. Доступна также статическая функция преобразования двумерного массива пар в строку запроса.
Классов: 2 · методов: 5 · конструкторов: 0 · деструкторов: 0 · отдельных функций: 0
class for
Основной класс для управления набором параметров HTTP-запроса и формирования строки URL-данных.
class RequestDataPair
Внутренняя структура, хранящая пару «имя—значение» параметра запроса.
void add(string name, string value)
Добавляет пару «имя—значение» или обновляет значение существующего параметра с указанным именем.
void remove()
Удаляет все пары параметров и полностью очищает внутренний набор данных.
void remove(string name)
Удаляет конкретную пару параметров по указанному имени.
string to_str()
Возвращает строку, содержащую все пары параметров в формате URL-запроса (name=value&...).
string to_str(string& _data[][])
Статический метод, преобразующий двумерный массив пар «имя—значение» в строку URL-запроса.
#property description "RequestData class for requests.mqh"
#property library
/*
Helper class for simple create request data
USAGE:
RequestData request_data;
request_data.add("par_1", "foo");
request_data.add("par_2", "bar");
Requests requests;
Response response = requests.get(url, request_data);
Print("Response = " + response.text);
---
You can replace value of pair using the same name in request_data.add():
RequestData request_data;
request_data.add("par_1", "foo");
request_data.add("par_2", "bar");
Print(request_data.to_str());
request_data.add("par_2", "super_bar");
Print(request_data.to_str());
---
Use request_data.remove() for clear data and fill request_data new data:
RequestData request_data;
request_data.add("par_1", "foo");
request_data.add("par_2", "bar");
request_data.add("par_3", "baz");
Print(request_data.to_str());
request_data.remove("par_2"); // removes data pair with specific name
Print(request_data.to_str());
request_data.remove(); // removes all data pairs
Print(request_data.to_str());
---
Use static method to_str(string& _data[][]) if you have array of pairs:
string array_data[2][2];
array_data[0][0] = "par_1"; array_data[0][1] = "foo";
array_data[1][0] = "par_2"; array_data[1][1] = "bar";
Print(RequestData::to_str(array_data));
*/
class RequestData {
private:
struct RequestDataPair {
string name;
string value;
};
RequestDataPair pairs[];
publПоказано первые 50% кода (символов: 2167)
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.