Function: chatParamsFromRequest()
function chatParamsFromRequest(req): Promise<{
aguiContext: Context[];
context: Context[];
forwardedProps: Record<string, unknown>;
messages: (
| ModelMessage<
| string
| ContentPart<unknown, unknown, unknown, unknown, unknown>[]
| null>
| UIMessage<unknown>)[];
parentRunId?: string;
resume?: RunAgentResumeItem[];
runId: string;
state: unknown;
threadId: string;
tools: object[];
}>;
정의 위치: packages/ai/src/utilities/chat-params.ts:282
HTTP Request를 읽고 JSON 본문을 파싱한 다음 AG-UI RunAgentInput으로 검증합니다. 표준 req.json() + chatParamsFromRequestBody(...) 쌍을 단일 호출로 통합합니다.
본문이 잘못되었거나 AG-UI 형태가 유효하지 않으면 상태 400과 마이그레이션을 안내하는 메시지가 본문에 포함된 **Response**를 발생시킵니다. 발생한 Response 객체를 기본적으로 처리하는 프레임워크(TanStack Start, SolidStart, Remix, React Router 7)는 400을 클라이언트에 자동으로 반환하므로 핸들러는 다음처럼 간단해집니다.
export async function POST(req: Request) {
const params = await chatParamsFromRequest(req)
// ...use params
}
발생한 Response 객체를 자동으로 처리하지 않는 프레임워크
(Next.js Route Handlers, SvelteKit, Hono, raw Node)에서는 호출을 try/catch로 감싸서 잡은 Response를 직접 반환하거나, 자체 JSON 파싱과 함께 chatParamsFromRequestBody를 직접 사용합니다.
매개변수
req
Request
반환값
Promise<{
aguiContext: Context[];
context: Context[];
forwardedProps: Record<string, unknown>;
messages: (
| ModelMessage<
| string
| ContentPart<unknown, unknown, unknown, unknown, unknown>[]
| null>
| UIMessage<unknown>)[];
parentRunId?: string;
resume?: RunAgentResumeItem[];
runId: string;
state: unknown;
threadId: string;
tools: object[];
}>
예외
잘못된 JSON 또는 유효하지 않은 AG-UI 형태인 경우 400입니다.