Fondamentalement, je veux que mon terminal MetaTrader 5 local fasse des requêtes POST à chaque fois qu'une paire EUR/USD change de taux BID.Comment créer un script de terminal MetaTrader 5 pour POSTER un débit BID EURUSD sur mon serveur nodejs sur le port 443?
Et je vais console.log
dans mon serveur nodejs:
const express = require('express');
const app = express();
const http = require('http').Server(app);
const io = require('socket.io')(http);
const path = require('path');
const mongoose = require('mongoose');
const bodyParser = require('body-parser');
let env = process.env.NODE_ENV || 'development';
const port = 443;
const connection = 'mongodb://localhost:27017/db';
app.use(bodyParser.urlencoded({extended: true}));
app.use(bodyParser.json());
app.use(express.static(path.join(__dirname, 'public')));
mongoose.connect(connection)
.then((db) => {
console.log('MongoDB up and running!');
app.post('/fxrates', (req, res) => {
console.log(req);
});
// MY ROUTES for the client
})
.catch(console.log);
http.listen(port,() => {
console.log(`listening on ${port}`);
});
Voici mon script MQ5 qui est compilé sans erreurs. Mais quand je l'exécute, je ne vois rien de connecté dans mon terminal serveur nodejs.
Et je vois l'impression Print("Test:",b);
script à l'intérieur Meta Trader Experts Tab
J'ai également ajouté dans MetaTrader 5 Terminal -> Outils -> Options -> Expert Advisors
http://localhost:443/fxrates
et
http://localhost/fxrates
http://localhost
Script MQ5
//+------------------------------------------------------------------+
//| fxrates.mq5 |
//| Copyright 2017, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
//- string headers;
string headers;
char data[], result[];
string str = "data=value"; // post data variables to send
StringToCharArray(str,data);
string b = CharArrayToString(data);
Print("Test:",b); // just test if good ... it is.
WebRequest("POST","http://localhost:443/fxrates",NULL,NULL,3000,data,ArraySize(data),result,headers);
}
//+------------------------------------------------------------------+
Avez-vous au moins ** essayé de donner mon avis précédent + le code source pour consigner/montrer le contenu de la transaction http-POST dans une console python? >>> http://stackoverflow.com/a/39966404/3666197 le relancer + afficher les sorties, ce qui a été enregistré, ok? ** – user3666197