diff --git a/docs/src/content/docs/openapi-fetch/examples.md b/docs/src/content/docs/openapi-fetch/examples.md index 8f6edbd97..ad0b2a5e2 100644 --- a/docs/src/content/docs/openapi-fetch/examples.md +++ b/docs/src/content/docs/openapi-fetch/examples.md @@ -72,6 +72,37 @@ client.GET("/some-authenticated-url", { }); ``` +### Vanilla JS getter + +You can also use getter: + +```ts +// src/lib/api/index.ts +import createClient from "openapi-fetch"; +import { paths } from "./v1"; + +let authToken: string | undefined = undefined; +someAuthMethod().then((newToken) => (authToken = newToken)); + +export default createClient({ + baseUrl: "https://myapi.dev/v1/", + headers: { + get Authorization() { + return authToken ? `Bearer ${authToken}` : undefined + } + } +}); +``` + +```ts +// src/some-other-file.ts +import client from "./lib/api"; + +client.GET("/some-authenticated-url", { + /* … */ +}); +``` + ## Frameworks openapi-fetch is simple vanilla JS that can be used in any project. But sometimes the implementation in a framework may come with some prior art that helps you get the most out of your usage.