Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Twitter!
und werden Sie Mitglied unserer Fangruppe
Interessantes Skript?
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Hat Ihnen das Skript gefallen?
Bewerten Sie es im Terminal MetaTrader 5
Bibliotheken

JSON Serialization and Deserialization (native MQL) - Bibliothek für den MetaTrader 5

Ansichten:
2035
Rating:
(86)
Veröffentlicht:
2016.09.01 16:33
Aktualisiert:
2018.01.08 15:28
\MQL5\Scripts\ \MQL5\Include\
JAson.mqh (30.59 KB) ansehen
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Serialization und Deserialization des JSON Protokolls. Der portable code mit der superschnellen Bibliothek С++.

string in, out;
CJAVal js(NULL, jtUNDEF); bool b;

//---
Print("JASon Example Deserialization:");

in="{\"a\":[1,2]}"; out=""; //Das Beispiel der Eingangsdaten
b=js.Deserialize(in); // deserializatiert
js.Serialize(out); // und wieder serializatiert
Print(in+" -> "+out); // wurde zum Vergleich wieder angezeigt

//---
Print("JASon Example Serialization:");

js["Test"]=1.4; // Das Beispiel der Eingangsdaten
out=""; js.Serialize(out); // serializatiert
Print(out); // wurde zum Vergleich wieder angezeigt


Das praktische Beispiel: Anmeldung auf der Webseite und Parsing der Antwort

CJAVal jv;
jv["login"]="Login"; // логин
jv["password"]="Pass"; // пароль

//--- Serialization in die Zeile  {"login":"Login","password":"Pass"}
char data[]; 
ArrayResize(data, StringToCharArray(jv.Serialize(), data, 0, WHOLE_ARRAY)-1);

//--- Die Sendung der Daten
char res_data[];
string res_headers=NULL;
int r=WebRequest("POST", "http://my.site.com/Authorize", "Content-Type: text/plain\r\n", 5000, data, res_data, res_headers);

//--- Angenommen nehmen wir aus der Antwort {"accessToken":"ABRAKADABRA","session_id":124521}
//--- den AccessToken
jv.Deserialize(res_data);
string AccessToken=jv["accessToken"].ToStr();


Als danke werden gerne die Beispiele genommen, wer und wie MQL für die Arbeit mit Web-Ressourcen verwendet. Teilen Sie mit Ihrer Erfahrung mit JSON in MQL.

Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/13663

ForecastOscilator_HTF ForecastOscilator_HTF

Der Indikator ForecastOscilator mit der Veränderungsmöglichkeit des Timeframes des Indikators in den Eingangsparametern.

Flat_HTF Flat_HTF

Der Indikator Flat mit der Veränderungsmöglichkeit des Timeframes des Indikators in den Eingangsparametern.

FX5_SelfAdjustingRSI_HTF FX5_SelfAdjustingRSI_HTF

Der Indikator FX5_SelfAdjustingRSI mit der Veränderungsmöglichkeit des Timeframes des Indikators in den Eingangsparametern.

FX5_SelfAdjustingCCI FX5_SelfAdjustingCCI

Der Oszillator CCI mit Bereichen Übergekauft/Überverkauft als Bollinger-Bänder.