• Create request-scoped middleware for Express/Fastify-style servers.

    Returns a middleware function that creates a child scope per request and attaches it to req[contextKey].

    Parameters

    Returns ((req: Record<string, unknown>, res: unknown, next: (() => void)) => void)

    A middleware function (req, res, next) => void.

      • (req, res, next): void
      • Parameters

        • req: Record<string, unknown>
        • res: unknown
        • next: (() => void)
            • (): void
            • Returns void

        Returns void

    1.2.0

    import express from 'express';
    import { createSynapseContext, createServerMiddleware, Tokens } from '@oobe-protocol-labs/synapse-client-sdk/context';

    const ctx = createSynapseContext(config);
    const app = express();

    app.use(createServerMiddleware(ctx));

    app.get('/balance/:address', async (req, res) => {
    const scope = req.synapseCtx;
    const rpc = scope.resolve(Tokens.RPC);
    const balance = await rpc.getBalance(Pubkey(req.params.address));
    res.json({ balance });
    });