بائننس لین دین کو حقیقی وقت میں WeChat پر پش کریں (wss پروٹوکول پریکٹس)

Binance Study Webscoket PushMessage
تخلیق کی تاریخ: 2018-10-20 14:42:39 آخر میں ترمیم کریں: 2019-07-03 16:27:05
کاپی: 105 کلکس کی تعداد: 6234
3
پر توجہ دیں
1444
پیروکار

ویب ساکٹ پروٹوکول کے ذریعہ ، ویکیپیڈیا پر بٹ کوائن ٹرانزیکشن کی معلومات کو آگے بڑھانا ، ڈبلیو ایس ایس پروٹوکول کی مشق کے طور پر کام کرسکتا ہے۔ اس کا بنیادی اصول یہ ہے کہ ہر 30 منٹ میں ایک بار listenKey کو اپ ڈیٹ کیا جائے اور پھر اکاؤنٹ کے سبسکرپشن کے ڈیٹا اسٹریم کو سبسکرائب کیا جائے۔

حکمت عملی کا ماخذ کوڈ
function main() {
    var listenKey = JSON.parse(HttpQuery('https://api.binance.com/api/v1/userDataStream','',null,'X-MBX-APIKEY:'+APIKEY)).listenKey;
    HttpQuery('https://api.binance.com/api/v1/userDataStream', {method:'DELETE',data:'listenKey='+listenKey}, null,'X-MBX-APIKEY:'+ APIKEY);
    listenKey = JSON.parse(HttpQuery('https://api.binance.com/api/v1/userDataStream','',null,'X-MBX-APIKEY:'+ APIKEY)).listenKey;
    var datastream = Dial("wss://stream.binance.com:9443/ws/"+listenKey, 100);
    var update_listenKey_time =  Date.now()/1000;
    while (true){
        if (Date.now()/1000 - update_listenKey_time > 1800){
            update_listenKey_time = Date.now()/1000;
            HttpQuery('https://api.binance.com/api/v1/userDataStream', {method:'PUT',data:'listenKey='+listenKey}, null,'X-MBX-APIKEY:'+ APIKEY);
            Log('keep listenKey alive');
        }
        var data = datastream.read();
        if(data){
            data = JSON.parse(data);
            if(data.e == 'executionReport' && data.x == 'TRADE'){
                Log(data.S, data.s,  'amount is ', data.l, 'at price:', data.p, '@');
            }
        }
    }
}