Estoy desarrollando la aplicación NestJS que crea un WebSocket para la API de Binance. Quiero obtener la salida de la transmisión en la ventana del navegador o en el cartero. Pero ahora puedo obtener una salida de transmisión solo en la consola. No puedo entender cómo enviar estas secuencias en el navegador.
Por favor ayuda
Una clase que crea WS stream Coin.ts
import { GetCryptocurrencies } from "./abstract/get-cryptocurrencies"; import { WebSocket } from "ws"; import { Logger } from "@nestjs/common"; import { Observable } from "rxjs"; export class Coin extends GetCryptocurrencies { private readonly logger = new Logger(Coin.name) private baseUrl: string private url: string constructor(coin: { name: string, symbol: string }[]) { super(coin) this.baseUrl = 'wss://stream.binance.com:9443/stream?streams=' this.url = coin.map((c) => { return `${c.symbol.toLowerCase()}usdt@miniTicker` }).join('/') } getCryptoData(): any { const stream$ = new Observable((observer) => { const ws = new WebSocket(`${this.baseUrl}${this.url}`) ws.on('open', () => { this.logger.log('Connection established') }) ws.onmessage = (msg: any) => { const message = JSON.parse(msg.data) observer.next(message) } }) return stream$ } }Un servicio get-data.service.ts
import { Injectable } from '@nestjs/common'; import { map, Observable } from 'rxjs'; import { Coin } from 'src/classes/coin'; import * as coinlist from '../list/coins.json' @Injectable() export class GetDataService { getCoins(): Observable<any[]> { const coins = new Coin(coinlist) return coins.getCryptoData().pipe(map((e) => { console.log(e) return e })) } }Un controlador get-data.controller.ts
import { Controller, Get, Response } from '@nestjs/common'; import { GetDataService } from './get-data.service'; @Controller('getdata') export class GetDataController { constructor(private getDataService: GetDataService){} @Get() getCoinsData() { return this.getDataService.getCoins(); } }