erest
    Preparing search index...

    Interface Reply<Raw>

    框架无关的响应接口。

    由各 adapter 注入到请求对象($reply),让 registerTyped 的 handler 用统一的 reply.json()/status() 写响应,从而与具体框架解耦——同一份 handler 可被 Express / Koa / @leizm/web 三个框架复用。

    raw 是逃生舱:当需要框架特有能力(setCookie/redirect/stream/文件下载等)时, 通过 reply.raw 访问框架原生对象。类型由 ERest<T, Raw> 的 Raw 泛型驱动, 经子包 createERest() 工厂在构造时锁定。

    markSent() 是 enveloper 逃生舱:当 registerTyped handler 需要返回非 JSON 响应 (CSV/文件下载/流式)并已通过 raw 手动写完响应时,调用它告知 enveloper 跳过自动 包装。否则 enveloper 会在 handler return 后再用 successEnveloper 包一层 json, 可能覆盖已发送的响应或抛错(各框架行为不一)。

    interface Reply<Raw = unknown> {
        raw: Raw;
        json(body: unknown): void;
        markSent(): void;
        send(body: string): void;
        status(code: number): this;
    }

    Type Parameters

    • Raw = unknown
    Index

    Properties

    Methods

    Properties

    raw: Raw

    框架原生对象逃生舱(setCookie/redirect/stream/文件下载等)

    Methods

    • 以 JSON 写入响应体

      Parameters

      • body: unknown

      Returns void

    • 标记响应已由 handler 手动发送(如经 raw 写 CSV/文件流),enveloper 将跳过自动包装。 仅在注册了 enveloper 且 handler 已自行写完整响应时需要调用。

      Returns void

    • 以纯文本写入响应体

      Parameters

      • body: string

      Returns void

    • 设置 HTTP 状态码并返回自身,支持链式调用

      Parameters

      • code: number

      Returns this