Discussions

next-auth V4

Image

je crois q vous utilisez la v3 de next-auth , et en s'intallant c'est la v4 qu'on installe c'est prquoi j'ai des soucis pour me connecter . import Providers from `next-auth/providers` not found

3 réponses
Image
Louis-Nicolas Leuillet
Le 17/08/2022 à 14:52

Je vous invite à utiliser la v3. Le cours est en train d'être mis à jour pour utiliser la dernière version de next-auth.

Image
MMADI Abdou
Le 17/08/2022 à 23:17

pour pouvoir utiliser la v3, il faudrait react@17.0.* et NEXT 12.2.4 installe automatiquement react@18.2.*, j'ai cherché comment installer NEXT@11.1.4 , j'ai pas trouvé . comment on peut installer une version antérieure de NEXTjs ? ou est ce qu'on peut retrograder l'installation ? c'est à dire , NEXT12 à NEXT11?

Image
Benjamin Carriou
Le 16/03/2023 à 12:18

Hello,

Je poste cela au cas où si quelqu'un utilise comme moi la v4.

Voici mon [...nextauth].js:

import NextAuth from 'next-auth';
import CredentialsProvider from 'next-auth/providers/credentials';
import { connectToDatabase } from '@/helpers/mongodb-client';
import { verifyPassword } from '@/helpers/auth';

export const authOptions = {
  session: {
    maxAge: 30 * 24 * 60 * 60, // 30 days
    generateSessionToken: () => {
      return randomUUID?.() ?? randomBytes(32).toString('hex');
    },
  },
  providers: [
    CredentialsProvider({
      async authorize(credentials) {
        const { email, password } = credentials;

        const clientMongoDB = await connectToDatabase('portfolio');

        const user = await clientMongoDB
          .db()
          .collection('users')
          .findOne({ email: email });

        if (!user) {
          clientMongoDB.close();
          throw new Error(
            'Unable to authenticate, please check your credentials'
          );
        }

        const isValid = await verifyPassword(password, user.password);
        if (!isValid) {
          clientMongoDB.close();
          throw new Error(
            'Unable to authenticate, please check your credentials'
          );
        }

        clientMongoDB.close();
        return {
          email: user.email,
          name: user.pseudo,
        };
      },
    }),
  ],
};
export default NextAuth(authOptions);
Image
Inscrivez-vous ou connectez-vous pour participer à la discussion.

Informations

Créée le 17 août 2022 07:47
Dernière activité le 17 août 2022 07:47