Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

368
Views
Unhandled Runtime Error SyntaxError: Unexpected end of JSON input from SignIn or SignOut next-auth

I have next an Unhandled Runtime Error SyntaxError: Unexpected end of JSON input when I use SignIn or SignOut with auth credentials.

The error is something weird because show the pop up next error, but register the token and session

Error

This is my authorization code with credentials:

CredentialsProvider({
      id: 'credentials',
      name: 'Credenciales',

      async authorize(credentials, req) {
        if (!(credentials.email.length > 0) || !(credentials.password.length > 0)) {
          throw new Error('Email or password was not provided');
        }
        const formData = new FormData();
        formData.append('username', credentials.email);
        formData.append('password', credentials.password);
        formData.append('client_id', credentials.rif);
        
        const url = `${process.env.BACK_ENDPOINT}/login/`
        
        const response = await fetch(url,{
          method: 'POST',
          body: formData
        });
        if (response.status === 401) {
          return {
            'details': 'error',
            'message': 'The username or password is not valid'
          }
        }
      
        if (response.status === 500) {
          throw new Error('Have been an error');
        }
        const data = await response.json();
        if (response.status > 400 && response.status < 500) {
          console.error(data)
          if (data.detail) {
            throw data.message;
          }
          throw data;
        }
        if(data.details === 'success'){
          return data
        }
        return null
      }
    }),

This is my signIn Callback:

signIn: async({ user, account, profile, email, credentials }) => {  
      // console.log('signIn', {user, account, profile, email, credentials})
      if (account.type === 'credentials'){
        if(user.details === 'success') return true
        if(user.details === 'error') return false
      }
},

And this is my onsubmit handle in frontend:

      const objectValues= {
        email: values.email,
        password: values.password,
        rif: values.rif,
        callbackUrl: '/',
      }
      signIn('credentials', objectValues)
about 4 years ago · Santiago Gelvez
1 answers
Answer question

0

I find the 'error': in callbacks from [...nextauth].js I had the redirect calback without anything there, it always executes with no return:

Callbacks:{
    jwt: ({token, user, account, isNewUser}) =>{
        some code...
    },

    redirect: async ({url, baseUrl}) => { 
        // NOTHING OF CODE
    },

    session: ({session, token}) => {
        some code...
    },

    signIn: async({ user, account, profile, email, credentials }) => {
        some code...
    }  
}

Next time I'm going to give more details about my code and the problem, sorry. Thanks @Bravo for your time.

about 4 years ago · Santiago Gelvez Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!