Skip to content

sunquakes/jsonrpc4js

Repository files navigation

English | 🇨🇳 中文

JSONRPC4JS

jsonrpc4js logo

Node GitHub jsonrpc4js

Documentation

Visit https://www.moonquakes.io/guide/javascript.html.

Quick Start

Installing

pnpm add jsonrpc4js

Server

const { NewServer } = require('jsonrpc4js') class TcpRpc { add(a: number, b: number): number { return a + b } } const port = 3200 const server = NewServer('tcp', port) // Also support http protocol. server.register(new TcpRpc()) server.start()

Client

const { NewClient } = require('jsonrpc4js') const client = NewClient('TcpRpc', 'tcp', `localhost:3200`) // Also support http protocol. let res = await client.call('add', 1, 2) // 3

Service registration & discovery

consul

const { Consul } = require('jsonrpc4js') const discovery = new Consul('http://localhost:8500') // Set discovery in server and client. // const server = NewServer('tcp', port, discovery) // const client = NewClient('TcpRpc', 'tcp', discovery)

nacos

const { Nacos } = require('jsonrpc4js') const discovery = new Nacos('http://localhost:8848') // Set discovery in server and client. // const server = NewServer('tcp', port, discovery) // const client = NewClient('TcpRpc', 'tcp', discovery)

Test

pnpm test

License

Apache-2.0 license

About

A javascript client and server over http or tcp implementation of JSON-RPC 2.0.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published