任何获得Pirl地址平衡的API?

时间:2018-01-04 23:04:43

标签: php

我想使用PHP获得Pirl地址的平衡,但我似乎找不到任何东西。我找到wss://alpha.diver.pirl.io/api/,但我不确定如何使用PHP访问它?

1 个答案:

答案 0 :(得分:0)

WSS是一个websocket。有完成PHP连接到websocket的第三方库,但我决定只使用Javascript。这是我通过websocket连接到PIRL Diver API并将钱包余额注入div的示例:" .balance.stats-box"。请原谅我在PHP中通过在标签内部回显它的一些格式问题(但是你从下面的例子中得到了想法)。

<script>
    jQuery(document).ready(function() {
        var wsUri = "wss://alpha.diver.pirl.io/api/";

        function init() {
            testWebSocket();
        }

        function initEnd() {
            websocket.close();
        }

        function testWebSocket() {
            websocket = new WebSocket(wsUri);
            websocket.onopen = function(evt) { onOpen(evt) };
            websocket.onclose = function(evt) { onClose(evt) };
            websocket.onmessage = function(evt) { onMessage(evt) };
            websocket.onerror = function(evt) { onError(evt) };
        }

        function onOpen(evt) {
            console.log("Connected.");
            doSend(\'{"jsonrpc":"2.0","method":"getAddressByHash","params":{"hash":"'.$_GET["PIRLWalletAddr"].'"},"id":1}\');
        }

        function onClose(evt) {
            console.log("Finished/Disconnected.");
        }

        function onMessage(evt) {
            var walletVal = JSON.parse(evt.data)["result"]["wal_value"];
            if (walletVal != undefined) {
                $(".balance.stats-box").append(Math.round(walletVal));
                websocket.close();
            }
        }

        function onError(evt) {
            console.log(\'ERROR: \' + evt.data);
        }

        function doSend(message) {
            websocket.send(message);
        }

        init();
    });
</script>

<div class="balance stats-box"></div>