createCallServer
On this page

unstable_createCallServer



This API is experimental and subject to breaking changes in minor/patch releases. Please use with caution and pay very close attention to release notes for relevant changes.

Summary

Create a React callServer implementation for React Router.

import {  createFromReadableStream,  createTemporaryReferenceSet,  encodeReply,  setServerCallback, } from "@vitejs/plugin-rsc/browser"; import { unstable_createCallServer as createCallServer } from "react-router";  setServerCallback(  createCallServer({  createFromReadableStream,  createTemporaryReferenceSet,  encodeReply,  }) ); 

Signature

function createCallServer({  createFromReadableStream,  createTemporaryReferenceSet,  encodeReply,  fetch: fetchImplementation = fetch, }: {  createFromReadableStream: BrowserCreateFromReadableStreamFunction;  createTemporaryReferenceSet: () => unknown;  encodeReply: EncodeReplyFunction;  fetch?: (request: Request) => Promise<Response>; }) 

Params

opts.createFromReadableStream

Your react-server-dom-xyz/client's createFromReadableStream. Used to decode payloads from the server.

opts.createTemporaryReferenceSet

A function that creates a temporary reference set for the RSC payload.

opts.encodeReply

Your react-server-dom-xyz/client's encodeReply. Used when sending payloads to the server.

opts.fetch

Optional Fetch API implementation. Defaults to global fetch.

Returns

A function that can be used to call server actions.

Docs and examples CC 4.0
Edit