Перейти к содержимому

TanStack Start

TanStack Start выполняет loader’ы и server functions на сервере, поэтому их вызовы fetch проходят через прокси без контекста браузера — та же ситуация, что и с SSR Next.js. Прокси нужен заголовок x-test-rcrd-id на этих серверных запросах, чтобы отнести их к правильной сессии записи.

Заголовок, который playwrightProxy.before() устанавливает на page браузера, приходит во входящем запросе на сервер. Прочитайте его там и пробросьте в любом серверном fetch:

import { RECORDING_ID_HEADER } from 'test-proxy-recorder';
// Inside a server function / loader, read the incoming request headers and
// forward the recording id to your backend fetch. RECORDING_ID_HEADER is
// 'x-test-rcrd-id'.
function withRecordingId(incoming: Headers, extra?: Record<string, string>) {
const headers: Record<string, string> = { ...extra };
const id = incoming.get(RECORDING_ID_HEADER);
if (id) headers[RECORDING_ID_HEADER] = id;
return headers;
}

Направьте базовый URL вашего бэкенда на прокси (http://localhost:8100) только в dev/test, ровно как в ручной настройке. Запросы на стороне браузера по-прежнему обрабатываются механизмом HAR из playwrightProxy.before().

Когда адаптер выйдет, это сведётся к одному импорту хелпера — следите за прогрессом в дорожной карте.