Dlaczego tylko jedno gniazdo podłączenia nie pracuje w kolbie i socketio?

głosy
0

Jest tylko „Pierwsze” nie działa w tym klientem. Który powoduje, że serwer nie może zostać uruchomiony. Serwer nie może być wywołany bez danych „Pierwsze”. I nie ma odpowiedzi do klienta. Funkcja monitora klient nie może zostać uruchomiony. Szczegółowe informacje znajdują się w kodzie, proszę sprawdzić. Inne wydarzenia są dobre, takie jak connect i załadunek.

Dziękuję Ci bardzo.

Kod klienta

let socket = io.connect('https://' + document.domain + ':' + location.port);

let rid = 0;

// This one is good
socket.on('connect', function () {
    console.log('connected');
    reloadR()
});

// This one is good
socket.on('Loadings', function (data) {
    initR(data);

});

// The monitor is not triggered because the backend py function is not triggered
// That means there is not response from backend
// The py func is not triggered because it does not get the data of 'Getting'
socket.on('Getting', function (data) { 
    show_logs(data);
});

window.onload = function (event) {
    setInterval(reloading, 100);
};

function reloading() {
    console.log(rid) //rid is good
    if(rid != 0) {

        // TODO: Why the py function in the backend that cannot receive the DATA of 'Getting'? ***
        let status=socket.emit('Getting', JSON.stringify({rid: rid})) 
        $('#viewer_panel').show();
        console.log(status)
    }
    else {
        $('#viewer_panel').hide();
    }
}

Kod projekt serwera: Jest to projekt kodu, który jest ok dla wyjaśnienia.

@socketio.on('Loadings')
def load_bots(json1):
    pass

# The py func is not triggered ***
# 'Getting' is nothing
@socketio.on('Getting')
def get_report(json1):
    _json=json.load(json)

    rid=_json.robot_id
    info=[]

    info.append([{'rid': rid}])
    emit('Getting', {'data': info}, room=request.sid)

emitują ( „Pierwsze”) nie działa, który powoduje, że serwer nie może być uruchomiony, a nie odpowiedź na kliencie.

Utwórz 10/10/2019 o 00:47
źródło użytkownik
W innych językach...                            


1 odpowiedzi

głosy
0

Działa z:

sio.emit('Getting', "test")
Odpowiedział 10/10/2019 o 00:53
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more