API RSocket
@byeolnaerim/typed-rx-http/rsocketKết nối và API loại route.
createRSocketApi<Operations>(url, jwt?, options?)
| Name | Type | Default | Mô tả |
|---|---|---|---|
url bắt buộc | 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) 값. |
Phương thức 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 kết nối mức thấp
connectRSocket(options)
RSocketClient와 WebSocket transport를 만들고 ReactiveSocketLike<RSocketBuffer> Promise를 반환합니다.
RSocketReconnect
get(), getStatus(), close()를 제공하고 CLOSED/ERROR에서 exponential backoff 재연결을 관리합니다.
RSocketConnectionStatus
KẾT NỐI | ĐANG KẾT NỐI | ĐÃ ĐÓNG.
defaultRSocketJsonCodec
Giá trị nullish là Uint8Array rỗng, string được mã hóa thành bytes UTF-8 bằng TextEncoder, các giá trị khác được mã hóa thành bytes UTF-8 bằng kết quả JSON.stringify. decode đọc ArrayBuffer/ArrayBufferView thành chuỗi UTF-8 và thử JSON trước, và nếu payload có JSON bên trong chuỗi JSON thì cũng sẽ parse một lần nữa.
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 필수 여부를 계산합니다.