Proč jen jedna zásuvka připojení nefunguje v baňce a socketio?

hlasů
0

K dispozici je pouze ‚Získání‘ nefunguje v tomto klientovi. Která způsobí, že server nemůže být spuštěna. Server nemůže být spuštěn bez údajů ‚Získání‘. A to nemá odpověď klientovi. Funkce monitoru klient nemůže být spuštěna. Podrobnosti jsou v kódu, zkontrolujte ji. Jiný typ akce jsou dobré jako ‚connect‘ a nakládání.

Děkuji mnohokrát.

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

Server code návrh: To je návrh kódu, který je v pořádku pro vysvětlení.

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

vyzařují ( ‚Získání‘) nefunguje, která způsobí, že server nemůže být spuštěn, a žádná odpověď na klientovi.

Položena 10/10/2019 v 00:47
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
0

Funguje to s:

sio.emit('Getting', "test")
Odpovězeno 10/10/2019 v 00:53
zdroj uživatelem

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