Проблема: WebRequest дает код ответа - 1 и текст ответа receive response failed [12002], при этом _LastError == 5203

MQL4 Asesoramiento

Tarea técnica

Задача: разобраться (если нужно, то - вместе с разработчиком серверной части, скайп которого я дам Исполнителю), почему штатная функция WebRequest, вызываемая в моем советнике из приведенной ниже моей функции Request, в обеих терминалах (МТ4 и МТ5) весьма часто возвращает код n == - 1 и текст txt_result == "receive response failed [12002]" с ошибкой _LastError == 5203, и исправить эту ошибку. Адрес url VDS в список разрешенных веб-адресов терминала добавлен. Чтобы не перегружать VDS, после каждого запроса берется пауза, которая в секундах на единицу больше количества неудачных запросов после последнего успешного запроса.

bool Request(string txt_request, string &txt_result, string url)  // Шлем текст txt_request на url, ответ пишем в txt_result.
{
   string headers;
   char request[], result[];
   StringToCharArray(txt_request, request);
   int n = WebRequest("POST", url, NULL, url, 500, request, ArraySize(request), result, headers);
   txt_result = CharArrayToString(result);

   if(n == 200) return true; // Успешный запрос.
   if(n == - 1) {
         Print("не удалось отправить веб-запрос ", txt_request, " на ", url, "; ошибка №", IntegerToString(_LastError), "; code = - 1; result = '", txt_result, "'. Добавьте ", url, " в список разрешенных веб-адресов");
         return false;        // Неудачный запрос.
   }
   Print("не удалось отправить веб-запрос ", txt_request, " на ", url, "; ошибка №", _LastError, "; code = ", n, "; result = ", txt_result);
   return false;              // Неудачный запрос.
}

Han respondido

1
Desarrollador 1
Evaluación
(33)
Proyectos
54
30%
Arbitraje
8
0% / 63%
Caducado
13
24%
Libre
2
Desarrollador 2
Evaluación
(50)
Proyectos
94
29%
Arbitraje
3
33% / 0%
Caducado
4
4%
Libre
3
Desarrollador 3
Evaluación
(257)
Proyectos
419
38%
Arbitraje
86
44% / 19%
Caducado
71
17%
Ocupado
4
Desarrollador 4
Evaluación
(1)
Proyectos
1
0%
Arbitraje
0
Caducado
0
Libre

Información sobre el proyecto

Presupuesto
30+ USD
Para el ejecutor
27 USD
Plazo límite de ejecución
de 1 a 5 día(s)