c# 웹소켓 예제

많은 웹 소켓 예제는 이전 웹 소켓 버전에 대 한 및 다시 통신에 대 한 복잡 한 코드 (및 외부 라이브러리)를 포함. 모든 최신 브라우저는 웹 소켓 프로토콜의 적어도 버전 13을 지원하므로 이전 버전과의 호환성 지원으로 작업을 복잡하게 만들지 않습니다. 이것은 외부 라이브러리가 없는 C#의 웹 소켓 프로토콜을 구현하는 베어 본입니다. 표준 HTML5 자바 스크립트 또는 C # 클라이언트를 사용하여 연결할 수 있습니다. 예제에서 보았듯이 Microsoft가 System.Net.WebSockets 네임스페이스에 투자하고 ASP.NET 및 WCF에서 제공하는 해당 API덕분에 WebSocket 서비스를 작성하는 것은 매우 간단합니다. 또한 대부분의 표준 이탈을 통해, WebSockets 지원 은 이제 IE 를 포함 하 여 모든 현대 브라우저에서 즐길 수 있는 것을 보았다 10, 크롬 13, 사파리와 파이어 폭스 11. 원본 헤더, 쿠키 또는 둘 다의 유효성을 검사하려면 WebSocketServer.AddWebSocketService(문자열, Func) 메서드를 사용하여 WebSocketBehavior를 사용하여 각 유효성 검사를 설정해야 합니다. 다음과 같이 초기화할 수 있습니다. 사이드바에는 REST 검색 API에 대한 Twitter 문서에 대한 링크가 포함되어 있지만 요약하면 API는 다양한 쿼리 문자열 매개 변수를 가진 URI를 통해 노출됩니다. 예를 들어 다음 URI는 페이지당 최대 5개의 상태 업데이트와 이미지 또는 기타 미디어 리소스를 포함하는 „AZ“라는 용어를 포함하는 모든 업데이트를 검색하는 데 사용됩니다. 이것은 매우 간단한 예이지만 간단한 방법으로 WebSockets의 강력한 힘을 보여 주어집니다. 각 초는 클라이언트가 염려하는 이벤트를 나타내며 두 번째 틱이 발생할 때마다 클라이언트에서 폴링할 필요성을 부정하는 동일한 소켓 연결을 통해 메시지가 브라우저로 전송됩니다. 물론, 이것은 주식 시세, 트위터 스트림, 또는 가격 엔진에서 가격 변화 될 수 있습니다.

가능성은 무한합니다. 이 예제는 websocket 메시지를 보내고 받는 방법입니다. 다음 예제는 Configure 메서드의 후반에서: 이전 예제에서는 ASP.NET 및 WCF를 사용 하 여 브라우저에 WebSocket 서비스를 노출 하는 방법을 보여 주어. 우리는 매 초마다 날짜와 시간을 전송하여 서비스의 „실시간“측면을 시뮬레이션했습니다. 물론 이 샘플은 별로 유용하지 는 않지만 클라이언트에 실시간 이벤트를 노출하는 매우 간단한 방법을 보여 줍니다. 이 예제에서는 다중 프레임 메시지를 보내고 받는 것을 보여 줍니다. 그러나 C#에서 사용자 고유의 테스트 클라이언트를 작성할 수도 있습니다. 명령줄 앱에 있는 예제가 있습니다. 명령줄 앱에서 서버와 테스트 클라이언트 를 시작: WebSocketHandler를 사용하여 간단한 데모를 빌드하는 예제를 살펴보겠습니다.

정식 WebSocket 예제는 채팅 응용 프로그램 (웹을 검색하여 많은 예제를 찾으십시오)이지만 지정된 간격으로 날짜를 단순히 에코하는 간단한 이벤트 기반 샘플을 보여줌으로써 WebSocket의 힘을 증류하고 싶습니다. 백그라운드 서비스를 사용하여 WebSocket에 데이터를 작성하는 경우 미들웨어 파이프라인을 계속 실행해야 합니다. 작업 완료소스 사용하여 이 작업을 수행합니다. 작업 완료 원본을 백그라운드 서비스에 전달하고 WebSocket을 완료할 때 TrySetResult를 호출하도록 합니다. 그런 다음 다음 예제와 같이 요청 중에 Task 속성을 기다립니다. 요청 수명 주기의 후반부(예를 들어 Configure 메서드 또는 작업 메서드의 후반)에서 WebSocket 요청인지 확인하고 WebSocket 요청을 수락합니다. 이 잡지에 애니메이션 GIF를 표시할 수 있다면 각 트윗이 클라이언트에 불이 붙을 때 지속적인 스크롤 동작이 표시됩니다.

Dieser Eintrag wurde veröffentlicht in Allgemein. Lesezeichen auf den Permanentlink.