Отправка данных к серверу на Axios

Почему-то выходит 404 ошибка при отправке данных на сервер? В чём может быть проблема?

Это мой hook:

import axios from 'axios'

export const reg = async (email, password, firstName, lastName, e) => {
    try {
        const res = await axios.post('/api/auth/registration', {
            email,
            password,
            firstName,
            lastName
        })
        alert(res.data)
    } catch (e) {
        console.log(e);
        alert(e.res.message)
    }

}

Это моя форма:

import React, { useState } from 'react'
import { reg } from '../actions/user'
import Input from '../util/Input'

const SignIn = () => {

    const [ email, setEmail ] = useState('')
    const [ password, setPassword ] = useState('')
    const [ firstName, setFirstName ] = useState('')
    const [ lastName, setLastName ] = useState('')
    

    const regHandler = async (e) => {
        e.preventDefault()
        try {
            const data = await reg(email, password, firstName, lastName)
            console.log(data);
        } catch (e) {
            console.log(e);
        }
    }

    return(
        <div>
            <div className="container">
                <form className="white">
                    <h2>Вход</h2>
                    <div className="input-field">
                        <label htmlFor="firstName">First Name</label>
                        <Input value={firstName} setValue={setFirstName}  type="text"/>
                        <div className="input-field">
                            <label htmlFor="lastName">Last Name</label>
                            <Input value={lastName} setValue={setLastName} type="text" />
                        </div>
                        <div className="input-field">
                            <label htmlFor="email">E-mail</label>
                            <Input value={email} setValue={setEmail} type="text"/>
                        </div>
                        <div className="input-field">
                            <label htmlFor="password">Password</label>
                            <Input value={password} setValue={setPassword} type="password"/>
                        </div>
                        <div className="input-field">
                            <button onClick={regHandler} className="btn pink lighten-3 z-depth-0">Войти</button>
                        </div>
                    </div>
              </form>
            </div>
        </div>
    )
}

export default SignIn

Это сервер который принимает запрос с клиента -

const Router = require("express");
const User = require("../models/User")
const bcrypt = require("bcryptjs")
const jwt = require('jsonwebtoken')
const {check, validationResult} = require("express-validator");
const config  = require("config");
const router = new Router()


router.post('/registration',
    [
        check('email', "Uncorrect email").isEmail(),
        check('password', 'Password must be longer than 3 and shorter than 12').isLength({min:3, max:12})
    ],
    async (req, res) => {
    try {
        const data = req.body
        console.log(data);
        const errors = validationResult(req)
        if (!errors.isEmpty()) {
            return res.status(400).json({message: "Uncorrect request", errors})
        }

        const {email, password} = req.body;

        const candidate = await User.findOne({email})
        console.log(candidate);
        console.log(candidate);

        if(candidate) {
            return res.status(400).json({message: `User with email ${email} already exist`})
        }
        const hashPassword = await bcrypt.hash(password, 8)
        const user = new User({email, password: hashPassword})
        await user.save()
        return res.json({message: "User was created"})

    } catch (e) {
        console.log(e)
        res.send({message: "Server error"})
    }
})

router.post('/login',
    async (req, res) => {
    try {
        
        const { email, password} = req.body
        const user = await User.findOne({ email })
        if(!user) {
            res.status(404).json({message: "Пользователь не найден"})
        }

        const isPassValid = bcrypt.compareSync(password, user.password)
        if(!isPassValid) {
            res.status(400).json({message: "Пользователь найден"})
        }

        const token = jwt.sign({id: user.id}, config.get('secretKey'), {expiresIn: '1h'})

        res.json({
            token, 
            user: {
                id: user.id,
                email: user.email
            }
        })

    } catch (e) {
        console.log(e)
        res.send({message: "Server error"})
    }
})


module.exports = router


Ответы (0 шт):