Ich habe eine Websocket-App, die über Stomp.js-Datei mit meinem Java-Backend verbindet.jquery stomp websockets Server Reconnection Reinitialisierung
function connect() {
var socket = new SockJS('<?php echo $rootbasename;?>wsconnect');
stompClient = Stomp.over(socket);
stompClient.debug = null;
stompClient.connect({}, function (frame) {
console.log('Connected: ' + frame);
console.log('/queue/messages/' + widgetId + "/" + $.cookie(cookiename));
stompClient.subscribe('/queue/messages/' + widgetId + "/" + $.cookie(cookiename), function (result) {
//code here
}, {userToken: $.cookie(cookiename), widgetId: widgetId});
stompClient.subscribe('/queue/makereadresult/' + widgetId + '/' + $.cookie(cookiename), function (result) {
});
Aber was ist, wenn mein Java Backend Server neu startet? Ich möchte, dass Kunden keine Veränderung bemerken. Gibt es eine Möglichkeit, die Verbindung bei Verbindungsverlust automatisch wiederherzustellen? Oder irgendeine Art, es für Klienten glatt zu machen?
Danke, aber das Problem ist ein Fehler Callback nur einmal ausgelöst, aber was, wenn mein Server down? Für 5 Minuten. Ich brauche es, um die Verbindung automatisch wiederherzustellen, wenn der Server wieder aktiv ist, aber Ihr Ansatz funktioniert in diesem Fall nicht. – avalon
können Sie im Fehlerrückruf schreiben, was Sie wollen. Sie könnten setInterval-Methode verwenden, um zu versuchen, eine Verbindung zu erhalten und weiterzumachen, bis es verbindet – Janar
Ok danke. Aber Ihre Antwort hat mit der Antwort dieses Threads funktioniert: https://stackoverflow.com/questions/22361917/automatic-reconnect-with-stomp-js-in-node-js-application – avalon