Клиент SockJS не подключается к серверу Grails - проблема с портом или что-то еще? - PullRequest
0 голосов
/ 07 марта 2019

Я использую SockJS и STOMP на внешнем интерфейсе простым стандартным способом для подключения к серверу на основе Grails. Фронт и бэкэнд находятся на разных серверах (я в рабочей команде, поэтому не могу это изменить), фронт на порту 4200 и обратно на 8080. Глядя на сетевое соединение в инструментах разработки Firefox, кажется, что SockJS пытается подключиться к порт 4200:

Request URL: http://localhost:4200/sockjs-node/842/cxrvvsec/websocket

когда мне нужно подключиться к бэкэнд-серверу на 8080. Есть ли способ изменить это? Я указываю 8080 в моем коде подключения:

  private serverUrl = 'http://localhost:8080/stomp'
  private sockjsclient = null; // SockJS socket that connects to the server (preferably using a WebSocket)
  private stompClient = null; // Stomp client that handles sending messages over the WebSocket

  this.sockjsclient = new SockJS(this.serverUrl); // Create a new SockJS socket
  this.stompClient = Stomp.over(this.sockjsclient); // Create a STOMP client to send messages over the socket
  let that = this;

  console.log(this.sockjsclient, this.stompClient)

  this.stompClient.connect({}, function() {

    console.log('*** subscribeToTopic: CONNECTION ESTABLISHED')

    return that.stompClient.subscribe(topic, (message) => callbackfn);
  })

Вывод консоли браузера:

Opening Web Socket...
Whoops! Lost connection to http://localhost:4200/stomp

Спасибо

...