Обсуждение статьи "Веб-проекты (Часть III): Система авторизации Laravel/MetaTrader 5"

 

Опубликована статья Веб-проекты (Часть III): Система авторизации Laravel/MetaTrader 5:

В этот раз создадим систему авторизации в торговом терминале MetaTrader 5 на чистом MQL5. Пользователи приложения смогут зарегистрироваться в системе, предоставив свои учётные данные, чтобы впоследствии можно было авторизоваться и получить доступ, к каким-нибудь данным, которые хранятся в серверной части приложения.

На этой анимации показано, как происходит авторизация пользователя в системе через пользовательский GUI в терминале MetaTrader 5:

Рис. 12 - Демонстрация авторизации пользователя в терминале MetaTrader 5.


Автор: Anatoli Kazharski

 

Спасибо за эти три статьи, весьма интересно.

Хотел бы предложить к рассмотрению одну мысль. По моим наблюдениям, в большинстве случаев,  требуются решения проще, "приземленней". Это можно по разделу фриланса понять. Возможно, я пропустил что - то, но я не припоминаю задач такого типа: "Установить Laravel , Nuxt и связать все это с моим супер Граалем на МТ5". А вот о связке советник / индикатор + сайт на Joomla / WordPress  просят. Это говорит о востребованности задачи коммуникации с CMS. И если бы Вы сочли возможным поделиться с сообществом своим решением вопроса авторизации и работы на сайтах с самыми распространенными CMS из скриптов на MQL, то это было бы весьма полезно и познавательно. Спасибо )

 
Andrei Novichkov #:

Спасибо за эти три статьи, весьма интересно.

Хотел бы предложить к рассмотрению одну мысль. По моим наблюдениям, в большинстве случаев,  требуются решения проще, "приземленней". Это можно по разделу фриланса понять. Возможно, я пропустил что - то, но я не припоминаю задач такого типа: "Установить Laravel , Nuxt и связать все это с моим супер Граалем на МТ5". А вот о связке советник / индикатор + сайт на Joomla / WordPress  просят. Это говорит о востребованности задачи коммуникации с CMS. И если бы Вы сочли возможным поделиться с сообществом своим решением вопроса авторизации и работы на сайтах с самыми распространенными CMS из скриптов на MQL, то это было бы весьма полезно и познавательно. Спасибо )

Описанное вами, это уже коммерческий проект.

Такое вредно выкладывать в общий доступ

 
Andrei Novichkov #:

Спасибо за эти три статьи, весьма интересно.

Хотел бы предложить к рассмотрению одну мысль. По моим наблюдениям, в большинстве случаев,  требуются решения проще, "приземленней". Это можно по разделу фриланса понять. Возможно, я пропустил что - то, но я не припоминаю задач такого типа: "Установить Laravel , Nuxt и связать все это с моим супер Граалем на МТ5". А вот о связке советник / индикатор + сайт на Joomla / WordPress  просят. Это говорит о востребованности задачи коммуникации с CMS. И если бы Вы сочли возможным поделиться с сообществом своим решением вопроса авторизации и работы на сайтах с самыми распространенными CMS из скриптов на MQL, то это было бы весьма полезно и познавательно. Спасибо )

На самом деле, если освоить схему описанную в этих статьях, то связать с CMS будет ещё проще.  

Следующая статья уже готова с примером работы с веб-сокетами.

А затем будет небольшой перерыв, так как сам столкнулся с некоторыми сложностями в работе с сетевыми сокет-функциями. Нужно подробнее изучить проблему и связаться с MQ-разработчиками по этому вопросу.

Следующие статьи будут пока в этой схеме (Laravel/Nuxt/MetaTrader 5). Она очень гибкая и для неё есть огромное количество уже готовых модулей, как для Laravel так и для Nuxt, что значительно сокращает время разработки для разработчиков-одиночек.

 
Vitaly Muzichenko #:

Описанное вами, это уже коммерческий проект.

Такое вредно выкладывать в общий доступ

Да? Я не подумал об этом. Наверное, вы правы.
Anatoli Kazharski #:

На самом деле, если освоить схему описанную в этих статьях, то связать с CMS будет ещё проще.  

Следующая статья уже готова с примером работы с веб-сокетами.

А затем будет небольшой перерыв, так как сам столкнулся с некоторыми сложностями в работе с сетевыми сокет-функциями. Нужно подробнее изучить проблему и связаться с MQ-разработчиками по этому вопросу.

Следующие статьи будут пока в этой схеме (Laravel/Nuxt/MetaTrader 5). Она очень гибкая и для неё есть огромное количество уже готовых модулей, как для Laravel так и для Nuxt, что значительно сокращает время разработки для разработчиков-одиночек.

Спасибо,будет интересно.
 

...

Здесь следует отметить, что на момент написания этой статьи заголовок Accept не передаётся терминалом MetaTrader 5, как ожидается. Это можно отследить в анализаторе Wireshark. То есть значение Accept всегда будет передаваться, как */*, игнорируя значение, которое указывается при формировании этого заголовка в MQL. Из-за этого сервер отдаёт в качестве ответа данные, которые относятся к служебной или отладочной информации, а не в формате JSON, как запрашивается. Это относится только к тем случаям, где вариантов ответа от сервера может быть несколько. Приоритет отдаётся в данном случае к типу text/html (см. заголовок ответа Content-Type). В тех же случаях, когда ответ от сервера отдаётся только в формате JSON (application/json), то тогда тип данных приходит такой, как запрашивается. 

...

Починили. 

На билде 3295 проблемы нет.

[response_headers]
Host: localhost
Date: Thu, 19 May 2022 11:39:26 GMT
Connection: close
X-Powered-By: PHP/7.4.6
Cache-Control: no-cache, private
Date: Thu, 19 May 2022 11:39:26 GMT
Content-Type: application/json
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 59
 
+
 
RegularExpressions на MQL5 для работы с регулярными выражениями
RegularExpressions на MQL5 для работы с регулярными выражениями
  • www.mql5.com
Регулярные выражения предоставляют формальный язык для быстрой и гибкой обработки текста. Каждое регулярное выражение является шаблоном(маской), для которого обработчик регулярных выражений пытается найти совпадения в исходном текстом. Шаблон состоит из односимвольных или многосимвольных литералов, операторов или конструкций.
 
Jonathan Pereira #:

вы используете другую версию для этой библиотеки?

Baixe 'RegularExpressions in MQL5 for working with regular expressions' from 'MetaQuotes' for MetaTrader 5 gratuitamente na Base de Código MQL5, 2016.05.20

Да, всё верно. 

...

И в этот раз в базе кода можно найти библиотеку RegularExpressions для работы с регулярными выражениями средствами MQL5. Скачайте эту библиотеку и поместите в каталог торгового терминала: \MetaTrader 5\MQL5\Include

...

 

Я скачал эту ссылку, но я получаю эту ошибку:



Я думал, что у вас была эта ошибка, и, возможно, вы исправили ее на своем компьютере.

 
Jonathan Pereira #:

Я скачал эту ссылку, но я получаю эту ошибку:

...

Я думал, что у вас была эта ошибка, и, возможно, вы исправили ее на своем компьютере.

Таких ошибок не возникало на тот момент.

Обычно, если вношу, какие-то изменения в сторонний код, то указываю об этом в статье. 

К сожалению, пока нет времени, чтобы разобраться с этим. Возможно, были какие-то изменения в файле DynamicMatrix.mqh из стандартной библиотеки, который используется в RegularExpressions:

#include <Internal\DynamicMatrix.mqh>

//--- 

В коде стандартной библиотеки я точно ничего не исправлял. А если это делаю, то только в копии, которую подключаю к проекту отдельно, так как после обновления терминала файлы стандартной библиотеки заменяются новыми версиями и все внесённые изменения будут утеряны.