Well yeah it only shows how to run it
The how does it work explains how it works:
https://github.com/Meldiron/appwrite-ssr-next-js/#-so-how-does-it-work
Well yeah but more about how I can implement it tbh so I would need to make a API endpoint that will save the user data?
Well like this
But is there a example code with only the core things because I cannot see it in the code instantly...
Because I have found this so basically set the cookies to the main website but to my understanding you still need to fetch the username right?
The repo has all the codes.
ah it sets it in the cookies after it fetched the data
makes sense
And then future requests pulls the data out of the cookie: https://github.com/Meldiron/appwrite-ssr-next-js/blob/32cbcd586be3d63423d8bfc7a3a7e958dad00eba/src/app/page.tsx#L8
alr will make my own version of that then <a:happi:1107928866477064202>
With some copy pasting
[SOLVED] nextJS SSR
nextJS SSR
Quick question how can I retrieve the jwt token so the token to store to get access to the api endpoint
Appwrite uses cookies which is why there's this: https://github.com/Meldiron/appwrite-ssr-next-js/blob/32cbcd586be3d63423d8bfc7a3a7e958dad00eba/src/app/api/login/route.ts#L39
So like:
const response = await fetch(
`${AppwriteEndpoint}/account/sessions`,
{
method: "POST",
headers: {
"x-appwrite-project": AppwriteProject,
},
}
);
const json = await response.json();
const cookiesStr = (response.headers.get("set-cookie") ?? "")
.split(appwriteHostname)
.join(ssrHostname);
``` And this will return the cookies?
because that return with null so I am probably doing something wrong
Did you set the domains up like the readme described?
I did this
export default async function handler(req, res) {
const response = await fetch(
process.env.APPWRITE_URL + `/v1/account/sessions`,
{
method: "POST",
headers: {
"x-appwrite-project": process.env.APPWRITE_PROJECT,
},
}
);
const cookiesStr = (response.headers.get("set-cookie") ?? "")
.split(process.env.APPWRITE_URL)
.join(process.env.NEXTAUTH_URL);
return res
.status(200)
.json({ success: true, info: response.headers.get("set-cookie") });
}
The actual hostnames of your app and Appwrite matter
oh nvm I get it now so put appwrite to process.env.NEXTAUTH_URL
To ensure server-side rendering works, we need to set those cookies on our SSR server hostname instead of the Appwrite hostname. Let's say our Appwrite instance is on cloud.appwrite.io, and our app is on myapp.com. SSR server on domain myapp.com won't receive appwrite.io cookies. This is expected behavior, as browsers keep 1st party cookies securely scoped to specific domains.
[SOLVED] nextJS SSR
Recommended threads
- self-hosted auth: /v1/account 404 on saf...
Project created in React/Next.js, Appwrite version 1.6.0. Authentication works in all browsers except Safari (ios), where an attempt to connect to {endpoint}/v1...
- Having issues with login via CLI
``` ~/appwrite appwrite login --endpoint https://localhost/v1 --verbose ? Enter your email myvalidemai...
- delete document problems
i don't know what's going on but i get an attribute "tournamentid" not found in the collection when i try to delet the document... but this is just the document...