diff --git a/docs/content/1.get-started/2.usage.md b/docs/content/1.get-started/2.usage.md index 037e32c..3af3061 100644 --- a/docs/content/1.get-started/2.usage.md +++ b/docs/content/1.get-started/2.usage.md @@ -112,11 +112,31 @@ export default defineNuxtPlugin(() => { const client = createTRPCProxyClient({ links: [ httpBatchLink({ + url: '/api/trpc', + + /** - * If you want to use SSR, you need to use the server's full URL - * @link https://trpc.io/docs/ssr - **/ - url: 'http://localhost:3000/api/trpc', + * Replace regular `fetch` with a `$fetch` from nuxt + * + * During server-side rendering, calling $fetch to fetch your internal API routes + * will directly call the relevant function (emulating the request), + * saving an additional API call. + * + * @see https://nuxt.com/docs/api/utils/dollarfetch + */ + fetch: (input, options) => + globalThis.$fetch.raw(input.toString(), options) + .catch((e) => { + if (e instanceof FetchError && e.response) + return e.response + + throw e + }) + .then(response => ({ + ...response, + json: () => Promise.resolve(response._data), + })), + }), ], })