clerk-get-token
v1.0.13
Published
Universal getToken utility for Clerk authentication
Maintainers
Readme
clerk-get-token
Universal getToken utility for Clerk authentication that works seamlessly in both Server and Client Components.
Installation
npm install clerk-get-tokenPeer Dependencies
npm install @clerk/nextjs nextUsage
Server Component
import { getToken } from 'clerk-get-token';
export default async function ServerComponent() {
const token = await getToken();
const customToken = await getToken({ template: 'custom-template' });
return <div>Token: {token}</div>;
}Client Component
'use client';
import { getToken } from 'clerk-get-token';
import { useEffect, useState } from 'react';
export default function ClientComponent() {
const [token, setToken] = useState<string | null>(null);
useEffect(() => {
getToken().then(setToken);
}, []);
return <div>Token: {token}</div>;
}How It Works
This package uses conditional exports to automatically serve the correct implementation:
- Server Components: Uses
@clerk/nextjs/server'sauth()function - Client Components: Uses the global Clerk instance from the browser
API
getToken(opts?: GetTokenOpts): Promise<string | null>
Retrieves the current session token.
Parameters
opts(optional)template?: string- Custom JWT template name
Returns
Promise<string | null> - The session token or null if not authenticated
License
MIT
