JSON RPC 2.0을 지원하는 Node.js 및 JavaScript/TypeScript용 WebSocket입니다.
rpc-websockets 라이브러리를 사용하면 개발자는 사용자, 컴퓨터 또는 모든 장치 간의 메시징을 포함하는 비즈니스 논리를 쉽게 구현할 수 있습니다. 양방향 알림 푸시, RPC 메서드 실행 및 모든 유형의 이벤트 신호 발생을 지원하기 위해 WebSocket 통신 프로토콜을 통해 JSON 데이터를 보내고 받을 수 있는 가능성을 제공합니다. 현재로서는 클라이언트만 RPC 메서드를 호출할 수 있으며 그 반대의 경우는 불가능합니다. 프론트엔드(HTML/JS 기반)와 백엔드(Node.js 기반) 개발 환경을 모두 지원합니다.
rpc-websockets는 Node.js를 기반으로 구축되었으며 LTS 및 현재 버전을 모두 지원합니다.
무료 OSS 버전을 사용하여 자신만의 WebSocket 서버 인스턴스를 구현 및 관리하거나 Pro 플랜을 구독하여 인스턴스를 관리하고 사용하기 쉬운 웹 관리를 통해 메서드, 이벤트 및 알림을 관리할 수 있도록 하세요. 문.
프로젝트에 OSS 라이브러리를 설치하십시오.
npm install rpc-websockets
rpc-websockets
사용하여 소스 코드를 작성합니다.
var WebSocket = require ( 'rpc-websockets' ) . Client
var WebSocketServer = require ( 'rpc-websockets' ) . Server
// instantiate Server and start listening for requests
var server = new WebSocketServer ( {
port : 8080 ,
host : 'localhost'
} )
// register an RPC method
server . register ( 'sum' , function ( params ) {
return params [ 0 ] + params [ 1 ]
} )
// ...and maybe a protected one also
server . register ( 'account' , function ( ) {
return [ 'confi1' , 'confi2' ]
} ) . protected ( )
// create an event
server . event ( 'feedUpdated' )
// get events
console . log ( server . eventList ( ) )
// emit an event to subscribers
server . emit ( 'feedUpdated' )
// close the server
server . close ( )
// instantiate Client and connect to an RPC server
var ws = new WebSocket ( 'ws://localhost:8080' )
ws . on ( 'open' , function ( ) {
// call an RPC method with parameters
ws . call ( 'sum' , [ 5 , 3 ] ) . then ( function ( result ) {
require ( 'assert' ) . equal ( result , 8 )
} )
// send a notification to an RPC server
ws . notify ( 'openedNewsModule' )
// subscribe to receive an event
ws . subscribe ( 'feedUpdated' )
ws . on ( 'feedUpdated' , function ( ) {
updateLogic ( )
} )
// unsubscribe from an event
ws . unsubscribe ( 'feedUpdated' )
// login your client to be able to use protected methods
ws . login ( { 'username' : 'confi1' , 'password' : 'foobar' } ) . then ( function ( ) {
ws . call ( 'account' ) . then ( function ( result ) {
require ( 'assert' ) . equal ( result , [ 'confi1' , 'confi2' ] )
} )
} ) . catch ( function ( error ) {
console . log ( 'auth failed' )
} )
// close a websocket connection
ws . close ( )
} )
WebSocket 서버와 클라이언트 JavaScript 및 TypeScript 클래스에 대한 API 설명서를 참조하세요.
무료 오픈 소스 버전의 특징.
모든 라이브러리의 오픈 소스 기능은 API 문서에 문서화되어 있으며 무료로 사용할 수 있습니다. 매우 허용적인 라이선스 조건에 따라 당사 작업물을 사용하는 한 귀하는 제공된 방법을 기반으로 귀하가 편한 방식으로 솔루션을 자유롭게 구현할 수 있습니다.
귀하의 프로덕션 준비 환경을 지원하기 위해 당사는 귀하의 비즈니스 사례 또는 개념 증명 아이디어를 현실로 전환할 수 있는 기술 세트와 함께 무료 OSS 버전을 기반으로 구축된 추가 기능을 제공할 수 있습니다.
당사에 연락하여 귀하의 사용 사례를 설명하시면 귀하의 요구 사항에 맞는 제안 솔루션을 신속하게 제공해 드리겠습니다.
우리는 rpc-websockets 및 그 이상에 대한 전문적인 지원을 제공합니다. 우리는 강력하고 확장 가능한 Node.js 애플리케이션 구축에 대한 다년간의 전문 지식을 보유하고 있으며 훌륭한 제품 출시를 방해하는 문제와 과제를 극복하는 데 도움을 드릴 수 있습니다. 우리는 소프트웨어 아키텍처 및 구현 분야에서 탁월하며 개발, 계획, 컨설팅, 교육 및 사용자 정의 서비스를 제공할 수 있습니다. 제품을 완성하는 데 도움이 되는 방법에 대해 논의할 수 있도록 언제든지 저희에게 연락해 주세요!
rpc-websockets는 다양한 사용 사례의 여러 회사에서 프로덕션에 적극적으로 사용되고 있습니다.
스폰서가 되어 사이트 링크와 함께 GitHub의 프로젝트 README에 로고를 받으세요. 준비를 위해 저희에게 연락 주시기 바랍니다!
이 라이브러리는 LGPLv3에 따라 라이센스가 부여됩니다. 라이센스 세부사항은 라이센스를 참조하십시오.