Я создаю веб-панель мониторинга, используя angular для запуска теста автоматизации нашего приложения, и я хочу показать журналы, сгенерированные во время выполнения теста, в режиме реального времени.Проблема в том, что я не могу соединить сервер websocket в кодовой базе автоматизации с клиентом в угловой приборной панели.Я погуглил мою проблему, но нашел только пример, где и клиент, и сервер имеют веб-интерфейс.Надеюсь, что кто-то может указать мне правильное направление для достижения того, что я пытаюсь сделать.
В основном я пытаюсь отправить журналы, созданные из теста, в угловое приложение, используя websocket.
Обновление:
Я нашел способ подключения к javascript, но теперь я получаю Error in connection establishment: net::ERR_CONNECTION_REFUSED
ошибку.
Вот мой код настройки:
WebSocket Server(Тестовый сценарий):
public class TestStepBroadcaster {
ServerSocket sersock;
Socket sock;
OutputStream ostream;
BufferedWriter bw1;
PrintWriter pwrite;
public TestStepBroadcaster() {
try {
sersock = new ServerSocket(3002);
sock = sersock.accept();
ostream = sock.getOutputStream();
} catch (Exception e) {
e.printStackTrace();
}
pwrite = new PrintWriter(ostream, true);
}
// method that we call from client code to send message
public void broadcast(String message) throws IOException {
pwrite.println(message);
pwrite.flush();
}
public void close() throws IOException {
bw1.close();
ostream.close();
sock.close();
sersock.close();
}
}
WebSocket Client (Angular App):
export class AppComponent implements OnInit {
title = 'my-dream-app';
websocet: WebSocket;
constructor(private channel: ChannelService) {
console.log('from app constructor')
// this.websocet = new WebSocket('ws://echo.websocket.org');
this.websocet = new WebSocket('ws://127.0.0.1:3002');
this.websocet.onmessage = function (event) {
console.log(event.data);
};
this.websocet.onopen = function (evt) {
console.log("onopen.");
};
this.websocet.onclose = function (evt) {
console.log("onclose.");
};
this.websocet.onerror = function (evt) {
console.log("Error!");
};
}
ngOnInit(): void {
this.channel.data.set('isLoggedIn', false);
}
}
Итак, теперь мой вопрос: в чем может быть причина отказа в соединении?
Спасибо.