7. Старт клиента — только HTML 200
textContent → JSON.parse()
→ инициализировать стор
→ первый рендер
стартового RPC users.me нет
Общий с tRPC слой: сессия, refresh, Orval-клиент Go. Один refresh и повтор после 401 для HTML и RPC; без вызова своего tRPC.
Нет сессии: Go не вызывается.
Подтверждённо недействительная сессия: удаление cookie. В том числе отклонённый refresh или повторный 401.
serialize-javascript
isJSON: true
только { user }
Без токенов и служебных ответов Go.
index.html из образа BFF:
прочитан и проверен при старте,
хранится в памяти.
Без S3/CDN на запрос.
script#bootstrap
type=application/json
setInnerContent: html: true
после безопасной сериализации.
503: сессия сохраняется, приложение не запускается. После успешного refresh новая cookie передаётся даже с HTML 503.
Общая политика HTML 200 и 503, включая гостевые
Cache-Control: private, no-store
Новая cookie или удаление cookie — в заголовках до тела.
1. Открытие страницы
Включая GET по внешней ссылке.
Cookie сессии: SameSite=Lax.