Hello appwrite lovers,
I am trying to implement Facebook auth in my NextJS app. I am using /app directory.
Here is my action:
'use server';
import { Account, Client, OAuthProvider } from 'appwrite';
import { cookies } from 'next/headers';
export async function signinWithFacebook() {
const client = new Client()
.setEndpoint(process.env.NEXT_PUBLIC_APPWRITE_ENDPOINT!)
.setProject(process.env.NEXT_PUBLIC_APPWRITE_PROJECT!);
const account = new Account(client);
try {
account.createOAuth2Session(OAuthProvider.Facebook, '/', '/auth/signin', [
'email',
'public_profile',
]);
const session = await account.getSession('current');
cookies().set('session', session.secret, {
path: '/',
httpOnly: true,
sameSite: 'strict',
secure: true,
});
} catch (error) {
console.log(error);
}
}
And here is my login button:
<form action={signinWithFacebook}>
<Button variant='outline' type='submit'>
<Facebook className='mr-2' /> Sign in With Facebook
</Button>
</form>
But when I am clicking the button I am getting this error:
[AppwriteException: User (role: guests) missing scope (account)] {
name: 'AppwriteException',
code: 401,
type: 'general_unauthorized_scope',
response: {
message: 'User (role: guests) missing scope (account)',
code: 401,
type: 'general_unauthorized_scope',
version: '1.5.7'
}
Can anyone help me to resolve this issue. Big thanks in advance.
Have you looked at this tutorial for ssr auth in nextjs?
https://appwrite.io/docs/tutorials/nextjs-ssr-auth/step-3
Right off the bat I see youre using the client side sdk, you should be using node-appwrite on server actions.
Yes, I was able to create EmailPasswordSession successfully following this article.
Recommended threads
- "Restore project" button fails: "Invalid...
In the dashboard, it clicking "Restore project" fails. The request sent to `PATCH https://cloud.appwrite.io/v1/projects/:project_id` with payload `{status: "act...
- how to access the value of account statu...
- Email address must be in its canonical f...
Hello, Recently I was trying to signup with my GitHub account with appwrite account for availing the student benifits but while trying to signup I saw such erro...