Michael SchaufelbergerM
tRPCβ€’12mo agoβ€’
2 replies
Michael Schaufelberger

How to make prefetching/RSC suspense work with auth?

Hi πŸ‘‹

I'm using the rsc-rq-prefetch pattern in my project. It worked quite well - up until I added auth to my tRPC procedures.

During SSR a server error gets thrown because the useSuspenseQuery request fails (there's no auth because SSR does not use the request's context/headers https://github.com/vercel/next.js/discussions/60640).

I'm wondering if there's a workaround that allows prefetching on the server for auth-protected procedures.
Am I missing something obvious?

I've seen the rsc-links example... Maybe I could make use of this? There it seems the server can use the request headers in a procedure. But since it should be a prefetch (and if pending, should be streamed in later) I'm not sure how I can pass such a rsc-linked call to the client in a possible pending state.
Was this page helpful?