API RSocket
@byeolnaerim/typed-rx-http/rsocketAPI de connexion et de type de route.
createRSocketApi<Operations>(url, jwt?, options?)
| Name | Type | Default | Description |
|---|---|---|---|
url requis | string | - | RSocket WebSocket endpoint. |
jwt | string | - | setup과 요청 composite metadata에 넣는 Bearer token. |
keepAlive | number | 30000 | setup keepAlive milliseconds. |
lifetime | number | 90000 | setup lifetime milliseconds. |
dataMimeType | string | application/json | setup data MIME type. |
maxRetry | number | 8 | 자동 재연결 최대 횟수. |
baseDelay | number | 500 | 재연결 exponential backoff 시작값. |
maxDelay | number | 10000 | backoff 상한. |
jitter | number | 250 | 추가 랜덤 지연 상한. |
codec | RSocketJsonCodec | defaultRSocketJsonCodec | payload encode/decode 구현. |
maxRequest | number | 2147483647 | requestStream subscription.request(n) 값. |
Méthodes RSocketApi
mono(route, data?)
requestResponse를 실행해 decoded response 하나를 emit하고 complete합니다. Operations가 있으면 requestResponse route와 request/response 타입이 제한됩니다.
stream(route, data?)
requestStream을 실행하고 payload마다 decoded response를 emit합니다. unsubscribe 시 remote subscription을 cancel합니다.
close()
현재 socket, 연결 중 Promise와 예약된 재연결 timer를 정리하고 CLOSED 상태로 만듭니다.
API de connexion de bas niveau
connectRSocket(options)
RSocketClient와 WebSocket transport를 만들고 ReactiveSocketLike<RSocketBuffer> Promise를 반환합니다.
RSocketReconnect
get(), getStatus(), close()를 제공하고 CLOSED/ERROR에서 exponential backoff 재연결을 관리합니다.
RSocketConnectionStatus
CONNECTÉ | EN COURS DE CONNEXION | FERMÉ.
defaultRSocketJsonCodec
Les valeurs nullish sont un Uint8Array vide, les chaînes sont encodées en bytes UTF-8 avec TextEncoder, et les autres valeurs sont encodées en bytes UTF-8 avec le résultat de JSON.stringify. Le décodage lit ArrayBuffer/ArrayBufferView en chaîne UTF-8 et essaie d'abord JSON, et un payload double-encodé contenant JSON à l'intérieur d'une chaîne JSON est également analysé une fois de plus.
Route type utilities
RSocketBuffer
라이브러리 API에서 사용하는 Uint8Array 기반 binary 타입입니다. /rsocket을 사용할 때는 RSocket peer 패키지를 별도로 설치합니다.
RSocketRoute<Operations>
Operations key union. key가 없으면 string fallback.
RSocketOperationRequest
route의 request property 타입.
RSocketOperationResponse
route의 response property 타입.
RSocketOperationInteraction
route의 interaction string 타입.
RSocketStreamRoute
interaction이 requestStream인 route만 추출.
RSocketMonoRoute
interaction이 requestResponse인 route만 추출.
RSocketRequestArgs
request가 unknown/void/optional인지에 따라 data tuple 필수 여부를 계산합니다.