Mendorong transaksi Binance ke WeChat secara real time (praktik protokol wss)

Binance Study Webscoket PushMessage
Tanggal Pembuatan: 2018-10-20 14:42:39 Akhirnya memodifikasi: 2019-07-03 16:27:05
menyalin: 105 Jumlah klik: 6234
3
fokus pada
1444
Pengikut

Melalui protokol websocket, informasi transaksi bitcoin dikirim ke WeChat, yang dapat digunakan sebagai latihan untuk protokol WSS. Prinsipnya adalah dengan memperbarui listenKey setiap 30 menit, lalu berlangganan ke datastream yang berlangganan akun tersebut.

Kode Sumber Strategi
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, '@');
            }
        }
    }
}