在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5/ Angular web socket服務(wù)小例子報(bào)錯

Angular web socket服務(wù)小例子報(bào)錯

整體上就是一個web socket服務(wù)小例子。報(bào)錯信息如下:
這是啥原因呢?

component.ts

export class WebSocketComponent implements OnInit {
  constructor(private wsService: WebSocketService) { }
  ngOnInit() {
    this.wsService.createObservableSocket("ws://localhost:8085").subscribe(
      data => console.log(data),
      err => console.log(err),
      () => console.log("流已經(jīng)結(jié)束")
    );
  }
  sendMessageToServer() {
    this.wsService.sendMessage("Hello from client");
  }
}

瀏覽器定位:(service.ts)
圖片描述

控制臺輸出:
圖片描述

====================================================
完整代碼如下:
1.服務(wù)器端:

import {Server} from 'ws';
const wsServer = new Server({port:8085});
wsServer.on("connection", websocket => {
    websocket.send("這個消息是服務(wù)器主動推送的!");
    websocket.on("message", message => {
        console.log("接收到消息:" + message)
    })
})

2.客戶端Serves:

export class WebSocketService {
  ws: WebSocket;
  constructor() { }
   createObservableSocket(url: string): Observable<any> {
     this.ws = new WebSocket(url);   
     return new Observable(
       observer => {                 
         this.ws.onmessage = (event) => observer.next(event.data);
         this.ws.onerror = (event) => observer.error(event);
         this.ws.onclose = (event) => observer.complete();
       }
     );
   }
   sendMessage(message: string) {
     this.ws.send(message);
   }
}

3.客戶端控制器TS:

export class WebSocketComponent implements OnInit {

  constructor(private wsService: WebSocketService) { }
  ngOnInit() {
    this.wsService.createObservableSocket("ws://localhost:8085").subscribe(
      data => console.log(data),
      err => console.log(err),
      () => console.log("流已經(jīng)結(jié)束")
    );
  }
  sendMessageToServer() {
    this.wsService.sendMessage("Hello from client");
  }
}
回答
編輯回答
黑與白

服務(wù)器啟動了么

2017年12月6日 01:49