i am using sveltekit and i'm a bit unclear on how to get the current user's session from the server side.
thisi s what i have so far // src/lib/server/appwrite.js import { Client, Account } from 'node-appwrite'; import { APPWRITE_KEY } from '$env/static/private'; import { PUBLIC_APPWRITE_ENDPOINT, PUBLIC_APPWRITE_PROJECT } from '$env/static/public';
export const SESSION_COOKIE = 'my-custom-session';
export function createAdminClient() { const client = new Client() .setEndpoint(PUBLIC_APPWRITE_ENDPOINT) .setProject(PUBLIC_APPWRITE_PROJECT) .setKey(APPWRITE_KEY); // Set the Appwrite API key!
// Return the services we want to use.
return {
get account() {
return new Account(client);
}
};
}
export function createSessionClient(event) { const client = new Client() .setEndpoint(PUBLIC_APPWRITE_ENDPOINT) .setProject(PUBLIC_APPWRITE_PROJECT);
// Extract our custom domain's session cookie from the request
const session = event.cookies.get(SESSION_COOKIE);
if (!session) {
throw new Error("No user session");
}
client.setSession(session);
// Return the services we want to use.
return {
get account() {
return new Account(client);
}
};
}
// src/routes/+page.server.js import { redirect } from '@sveltejs/kit'; export async function load({ locals }) { // Access our user from locals. if (!locals.user) { // If no user is logged in, redirect to the sign up page. redirect(301, '/login'); } // If the user is logged in, redirect to the account page. redirect(301, '/'); }
Recommended threads
- Student plan issue
I am using GitHub student plan, I even got access to appwrite's mock phone number. but when I try to use it, it says the phone number limit has reached
- Getting "The current user has been block...
So today I want to deploy something to Appwrite but when I click Sign in with Github, it's redirect me to login site and in the url bar I see this `?error=%7B"m...
- Flutter OAuth2 does not attach Google se...
Hi Appwrite team, I’m using Appwrite Auth in a Flutter mobile app and trying to upgrade an anonymous user to Google OAuth. Docs say that if there is already a...