So verwenden Sie NextJS AppRouter, um /api/auth/me auf der Serverseite abzurufen
P粉883223328
2023-08-15 13:04:07
<p>Ich möchte den App-Router mit nextjs verwenden und bin auf ein Problem gestoßen. Damit meine Anwendung funktioniert, muss ich /api/auth/me aufrufen, um einen Benutzer zurückzugeben, oder null, wenn ich nicht angemeldet bin. Dazu muss ich einen Autorisierungsheader mit dem von localStorage erhaltenen Bearer-Token in api.get("/api/auth/me") in Axios einfügen. Ich möchte dies serverseitig tun, da meine App Google-Anzeigen anzeigen muss. Wie kann ich das machen? </p>
<p>Meine layout.tsx sieht so aus</p>
<pre class="brush:php;toolbar:false;">import "./globals.css";
import type { Metadata } from „next“;
import { Inter } from „next/font/google“;
Importieren Sie die Seitenleiste aus „../components/Sidebar“;
const inter = Inter({ subsets: ["latin"] });
Konstante Metadaten exportieren: Metadata = {
Titel: „Nächste App erstellen“,
Beschreibung: „Erstellt durch „Nächste App erstellen““
};
Exportieren Sie die Standardfunktion RootLayout({
Kinder,
}: {
Kinder: React.ReactNode;
}) {
zurückkehren (
<html lang="da" className="h-full bg-gray-100">
<body className="h-full bg-gray-100">
<Seitenleiste />
{Kinder}
</body>
</html>
);
}</pre>
<p><br /></p>
您无法从服务器端访问本地存储。但是,您可以使用cookie。出于安全考虑,请设置http-only cookie。因此,您需要在身份验证后进行一次POST请求以设置http-only cookie。