Encabezado personalizado
Traducción Beta No Oficial
Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →
La opción headers se puede personalizar en la configuración al usar withTRPC en Next.js o createClient en React.js.
headers puede ser tanto un objeto como una función. Si es una función, se llamará dinámicamente en cada solicitud HTTP.
_app.tsxtsimport type { AppRouter } from '@/server/routers/app';import { withTRPC } from '@trpc/next';import { AppType } from 'next/dist/shared/lib/utils';export let token: string;const MyApp: AppType = ({ Component, pageProps }) => {return <Component {...pageProps} />;};export default withTRPC<AppRouter>({config(config) {return {links: [httpBatchLink({/** headers are called on every request */headers: () => {return {Authorization: token,};},}),],};},})(MyApp);
_app.tsxtsimport type { AppRouter } from '@/server/routers/app';import { withTRPC } from '@trpc/next';import { AppType } from 'next/dist/shared/lib/utils';export let token: string;const MyApp: AppType = ({ Component, pageProps }) => {return <Component {...pageProps} />;};export default withTRPC<AppRouter>({config(config) {return {links: [httpBatchLink({/** headers are called on every request */headers: () => {return {Authorization: token,};},}),],};},})(MyApp);
Ejemplo con autenticación (login)
pages/auth.tsxtsconst loginMut = trpc.useMutation(['auth.login'], {onSuccess({ accessToken }) {token = accessToken;},});
pages/auth.tsxtsconst loginMut = trpc.useMutation(['auth.login'], {onSuccess({ accessToken }) {token = accessToken;},});
El token puede ser cualquier cosa que desees. Depende completamente de ti si es solo una variable del lado del cliente cuyo valor actualizas tras un éxito o si almacenas el token y lo recuperas del almacenamiento local.