2013-09-16 5 views
0

Я пытаюсь подключиться к нему в своем приложении на C++.Как получить данные от MtGox через websockets?

Если я посылаю рукопожатие

socketio.mtgox.com:80/mtgox, он не отвечает

websocket.mtgox.com:80/mtgox, он посылает 400 Bad запрос

Я Googled это одно:

socketio.mtgox.com:80/socket.io/1/websocket, это один подключается, переключается на WebSocket протокол, а затем посылает мне два сообщения о том, «1 ::» и «2 ::».

В Wireshark все выглядит нормально.

Что мне делать с моей стороны?

Я попытался отправить { "канал": "24e67e0d-1cad-4cc0-9e7a-f8523ef460fe", "ор": "подписываться"} - ничего не происходит ...

Что такое правильный URL для подключения и что я могу отправить для подписки на канал?

Кроме того, может ли кто-нибудь отправить простой .js-код, который успешно соединяется с MtGox со страницы HTML?

Без node.js или socket.io, только встроенный класс HTML5 Websocket, поэтому я мог просто иметь тестовое рабочее соединение, отправляющее запросы с моего компьютера, чтобы убедиться, что это не сетевая проблема или что-то еще, не связанное с моим программа.

У меня есть этот скрипт:

<script language="javascript" type="text/javascript"> 

    var output; 

    function init() 
    { 
    output = document.getElementById("output"); 
    testWebSocket(); 
    } 

    function testWebSocket() 
    { 
    var websocket = new WebSocket('wss://socketio.mtgox.com:443/mtgox'); 
    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) 
    { 
    writeToScreen("CONNECTED"); 
    //doSend("WebSocket rocks"); 
    } 

    function onClose(evt) 
    { 
    writeToScreen("DISCONNECTED"); 
    } 

    function onMessage(evt) 
    { 
    writeToScreen('<span style="color: blue;">RESPONSE: ' + evt.data+'</span>'); 
    } 

    function onError(evt) 
    { 
    writeToScreen('<span style="color: red;">ERROR:</span> ' + evt.data); 
    } 

    function doSend(message) 
    { 
    writeToScreen("SENT: " + message); 
    websocket.send(message); 
    } 

    function writeToScreen(message) 
    { 
    var pre = document.createElement("p"); 
    pre.style.wordWrap = "break-word"; 
    pre.innerHTML = message; 
    output.appendChild(pre); 
    } 

    window.addEventListener("load", init, false); 

</script> 

но он печатает ОШИБКА: не определено и разрывает соединение.

Спасибо!

ответ

0

Этот URL работает для меня:

'wss://websocket.mtgox.com:443/mtgox?Currency=GBP' 

вы можете изменить валюту для лучшего, я думаю, вы также можете использовать запятую список в качестве значений

Смежные вопросы