En-tête personnalisé
Traduction Bêta Non Officielle
Cette page a été traduite par PageTurner AI (bêta). Non approuvée officiellement par le projet. Vous avez trouvé une erreur ? Signaler un problème →
L'option headers peut être personnalisée dans la configuration lors de l'utilisation de withTRPC dans Next.js ou de createClient dans React.js.
headers peut être soit un objet, soit une fonction. Dans le cas d'une fonction, elle sera appelée dynamiquement à chaque requête 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);
Exemple avec authentification
pages/auth.tsxtsconst loginMut = trpc.useMutation(['auth.login'], {onSuccess({ accessToken }) {token = accessToken;},});
pages/auth.tsxtsconst loginMut = trpc.useMutation(['auth.login'], {onSuccess({ accessToken }) {token = accessToken;},});
Le token peut être ce que vous souhaitez. Il dépend entièrement de vous qu'il s'agisse simplement d'une variable côté client dont vous mettez à jour la valeur lors d'un succès, ou que vous stockiez le token pour le récupérer depuis le local storage.