Closed
Description
Question 💬
Hi, I'm relatively new to coding in React.
I am using Next JS 13, and implemented Next Auth in my project. However, my API endpoints all show me a 404 error.
Here's the path I am using for [...nextauth].ts
/src/app/api/auth/[...nextauth].ts
Here's the code I am using in the above file:
import NextAuth from "next-auth";
import CredentialsProvider from "next-auth/providers/credentials";
export const authOptions = {
// Configure one or more authentication providers
providers: [
CredentialsProvider({
// The name to display on the sign in form (e.g. "Sign in with...")
name: "Credentials",
// `credentials` is used to generate a form on the sign in page.
// You can specify which fields should be submitted, by adding keys to the `credentials` object.
// e.g. domain, username, password, 2FA token, etc.
// You can pass any HTML attribute to the <input> tag through the object.
credentials: {
username: { label: "Username", type: "text", placeholder: "jsmith" },
password: { label: "Password", type: "password" },
},
async authorize(credentials, req) {
// Add logic here to look up the user from the credentials supplied
const user = { id: "1", name: "J Smith", email: "[email protected]" };
if (user) {
// Any object returned will be saved in `user` property of the JWT
return user;
} else {
// If you return null then an error will be displayed advising the user to check their details.
return null;
// You can also Reject this callback with an Error thus the user will be sent to the error page with the error message as a query parameter
}
},
}),
],
};
export default NextAuth(authOptions);
Here's my next.config.js
/** @type {import('next').NextConfig} */
const nextConfig = {
reactStrictMode: true,
swcMinify: true,
experimental: {
appDir: true,
fontLoaders: [
{ loader: "next/font/google", options: { subsets: ["latin"] } },
],
},
};
module.exports = nextConfig;
Initially I assumed that the error was related to everything under the api folder, however upon creating a route.ts file under /api
and /api/test
I was able to rule that out.
Is there something wrong I am doing with the api and nextauth?
How to reproduce ☕️
Use NextAuth with NextJS 13
Contributing 🙌🏽
No, I am afraid I cannot help regarding this