Getting session null in tanstack start beforeLoad

I am getting session null in following implementation
import { Navbar } from "@/components/navbar";
import { createFileRoute } from "@tanstack/react-router";
import { authClient } from "@/lib/auth-client";
import { redirect } from "@tanstack/react-router";

export const Route = createFileRoute("/")({
component: App,
beforeLoad: async () => {
const session = await authClient.getSession();
console.log(session.data?.user);
if (!session.data?.user) {
throw redirect({
to: "/sign-in",
});
}
},
});

function App() {
return (
<div className="min-h-screen">
<Navbar />
</div>
);
}
import { Navbar } from "@/components/navbar";
import { createFileRoute } from "@tanstack/react-router";
import { authClient } from "@/lib/auth-client";
import { redirect } from "@tanstack/react-router";

export const Route = createFileRoute("/")({
component: App,
beforeLoad: async () => {
const session = await authClient.getSession();
console.log(session.data?.user);
if (!session.data?.user) {
throw redirect({
to: "/sign-in",
});
}
},
});

function App() {
return (
<div className="min-h-screen">
<Navbar />
</div>
);
}
when I am using useSession in component itself I am getting session.
2 Replies
Ping
Ping8h ago
beforeLoad runs on the server, try to use auth.api if possible. And then you'll need to find a way to provide headers to the get-session call otherwise we can't infer the cookies to derive the user's session
Nitish
NitishOP7h ago
I tried using getRequestHeaders but getting error in that

Did you find this page helpful?