[angular] 웹 소켓 구성
웹 소켓은 실시간 양방향 통신을 구현하는 데 사용됩니다. Angular 애플리케이션에서 웹 소켓을 구성하는 방법을 살펴보겠습니다.
1. WebSocket 모듈 설치
먼저, Angular 애플리케이션에서 웹 소켓을 사용하기 위해 @angular/websocket
모듈을 설치해야 합니다.
npm install --save @angular/websocket
2. WebSocket 서비스 생성
웹 소켓과 상호작용하기 위한 서비스를 생성합니다. 예를 들어, WebSocketService
라는 서비스를 생성할 수 있습니다.
import { Injectable } from '@angular/core';
import { webSocket, WebSocketSubject } from 'rxjs/webSocket';
@Injectable({
providedIn: 'root'
})
export class WebSocketService {
private socket$: WebSocketSubject<any>;
constructor() {
this.socket$ = webSocket('ws://localhost:8080'); // 웹 소켓 서버 URL로 변경
}
sendMessage(message: string): void {
this.socket$.next(message);
}
getMessages() {
return this.socket$.asObservable();
}
}
3. WebSocket 서비스 사용
이제, Angular 컴포넌트에서 WebSocket 서비스를 사용하여 웹 소켓과 상호작용할 수 있습니다.
import { Component, OnInit } from '@angular/core';
import { WebSocketService } from './web-socket.service';
@Component({
selector: 'app-websocket-example',
template: `
<input type="text" [(ngModel)]="message" />
<button (click)="sendMessage()">Send</button>
<ul>
<li *ngFor="let msg of messages">{{ msg }}</li>
</ul>
`,
})
export class WebSocketExampleComponent implements OnInit {
message: string;
messages: string[] = [];
constructor(private webSocketService: WebSocketService) {}
ngOnInit() {
this.webSocketService.getMessages().subscribe((message) => {
this.messages.push(message);
});
}
sendMessage() {
this.webSocketService.sendMessage(this.message);
this.message = '';
}
}
위 예제에서는 WebSocketService
를 사용하여 웹 소켓으로 메시지를 보내고 받는 방법을 보여줍니다.
이제 Angular 애플리케이션에서 웹 소켓을 구성할 수 있습니다!
더 많은 자세한 내용은 Angular 웹 소켓 공식 문서를 참고하시기 바랍니다.