Как расследовать сбои webScoket в Safari? - PullRequest
0 голосов
/ 20 августа 2011

Я только начал изучать WebSockets сегодня.Я использую Safari и следующий C # в качестве сервера WebSocket (http://www.codeproject.com/KB/webservices/c_sharp_web_socket_server.aspx).

Мой клиент прост:

<script type="text/javascript">
    try{
    var socket = new WebSocket('ws://localhost:8181'); 

    alert(socket.readyState); 
    socket.onopen = function() {
        alert('opened...');
    };
    socket.onclose = function() { 
        alert('closed');

    }; 
    socket.onerror = function(){
        alert('error!'); 
    }; }
    catch(exception){
        alert(exception); 

    }
</script> 

В Safari появляется сообщение «Закрыто»что означает, что событие onclose было инициировано до включения onopen (). Я подозреваю, что сервер закрывает соединение, есть идеи? Кроме того, каков наилучший способ расследования таких проблем, как любая ошибка или код причины?Спасибо!

1 Ответ

1 голос
/ 20 августа 2011

Наверное, я понял это.В Safari вы можете включить Developer Tools, и у меня пропал заголовок Sec-WebSocket-Origin, поэтому я решил изменить следующее:

WebSocket-Origin changed to Sec-WebSocket-Origin

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...