I have this error and I can’t find any solution on the Internet.
Read more at https://errors.authjs.dev/#credentialssignin
[auth][error] CallbackRouteError: Read more at https://errors.authjs.dev#callbackrouteerror
[auth][cause]: Error
at Module.callback (webpack-internal:///(action-browser)/./node_modules/@auth/core/lib/actions/callback/index.js:226:23)
at async AuthInternal (webpack-internal:///(action-browser)/./node_modules/@auth/core/lib/index.js:66:24)
at async Auth (webpack-internal:///(action-browser)/./node_modules/@auth/core/index.js:126:34)
at async signIn (webpack-internal:///(action-browser)/./node_modules/next-auth/lib/actions.js:51:17)
at async $$ACTION_0 (webpack-internal:///(action-browser)/./src/actions/login.ts:30:9)
at async C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistcompilednext-serverapp-page.runtime.dev.js:39:418
at async rS (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistcompilednext-serverapp-page.runtime.dev.js:38:7978)
at async r2 (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistcompilednext-serverapp-page.runtime.dev.js:41:1251)
at async doRender (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverbase-server.js:1438:30)
at async cacheEntry.responseCache.get.routeKind (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverbase-server.js:1599:28)
at async DevServer.renderToResponseWithComponentsImpl (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverbase-server.js:1507:28)
at async DevServer.renderPageComponent (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverbase-server.js:1924:24)
at async DevServer.renderToResponseImpl (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverbase-server.js:1962:32)
at async DevServer.pipeImpl (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverbase-server.js:920:25)
at async NextNodeServer.handleCatchallRenderRequest (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistservernext-server.js:272:17)
at async DevServer.handleRequestImpl (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverbase-server.js:816:17)
at async C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverdevnext-dev-server.js:339:20
at async Span.traceAsyncFn (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdisttracetrace.js:154:20)
at async DevServer.handleRequest (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverdevnext-dev-server.js:336:24)
at async requestHandlerImpl (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverlibrouter-server.js:377:13)
at async Server.requestListener (C:UsersmeWebstormProjectsProject-Lnode_modulesnextdistserverlibstart-server.js:141:13)
[auth][details]: {
“provider”: “credentials”
}
Here’s the code for the various files.
"use server"
import * as z from 'zod';
import { AuthError } from "next-auth";
import { signIn } from "@/auth";
import { LoginSchema } from '@/schemas';
import { DEFAULT_LOGIN_REDIRECT } from "@/routes";
export const login = async (values: z.infer<typeof LoginSchema>) => {
const validatedFields = LoginSchema.safeParse(values);
if(!validatedFields.success){
return {error: "Invalid fields"}
}
const { email, password } = validatedFields.data;
try {
await signIn("credentials", {
email,
password,
redirectTo: DEFAULT_LOGIN_REDIRECT,
})
} catch (error) {
if(error instanceof AuthError){
switch (error.type) {
case "CredentialsSignin":
return {error: "Invalid credentials"}
case "CallbackRouteError":
return {error: "An error occurred with the callback route"}
default:
return {error: "An error occurred"}
}
}
throw error;
}
};
import bcrypt from "bcryptjs";
import type { NextAuthConfig } from "next-auth"
import Credentials from "next-auth/providers/credentials"
import { LoginSchema } from "@/schemas"
import { getUserByEmail } from "@/data/users";
export default {
providers: [
Credentials({
async authorize(credentials: any ) {
const validateFields = LoginSchema.safeParse(credentials)
if(validateFields.success) {
const { email, password } = validateFields.data
const user = await getUserByEmail(email);
if (!user || !user.password) return null;
const passwordsMatch = await bcrypt.compare(
password,
user.password
);
if(passwordsMatch) return user;
}
return null;
}
})
]
} satisfies NextAuthConfig
Connexion issue
When I try to log in normally I must have {error: “Invalid credentials”} because my input data is not correct and I have everything but that.
Vizard is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.