UNPKG

picorpc

Version:

A tiny RPC library and spec, inspired by JSON-RPC 2.0 and tRPC.

25 lines (24 loc) 810 B
/* IMPORT */ import createAbstractClient from './abstract.js'; import { deserialize, serialize } from '../json.js'; /* MAIN */ const createHttpClient = (options) => { const { context, url } = options; const serializer = options.serializer || serialize; const deserializer = options.deserializer || deserialize; return createAbstractClient({ context, handler: async (request) => { const response = await fetch(url, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: serializer(request) }); const content = await response.text(); const result = deserializer(content); return result; } }); }; /* EXPORT */ export default createHttpClient;