Perché solo una presa di collegare non funziona nel pallone e socketio?

voti
0

C'è solo 'Getting' non funziona in questo client. Questo fa sì che il server non può essere attivato. Il server non può essere attivato senza i dati di 'Getting'. E non ha una risposta al client. La funzione di monitoraggio del cliente non può essere attivato. I dettagli sono nel codice, si prega di controllare. Altri eventi sono buone come 'connect' e caricamento.

Grazie mille.

codice cliente

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();
    }
}

progetto di codice del server: si tratta di un progetto di codice, che è ok per spiegare.

@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)

emettere ( 'Getting') non funziona, che fa sì che il server non può essere attivato, e nessuna risposta al cliente.

È pubblicato 10/10/2019 alle 00:47
fonte dall'utente
In altre lingue...                            


1 risposte

voti
0

Funziona con:

sio.emit('Getting', "test")
Risposto il 10/10/2019 a 00:53
fonte dall'utente

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