axios post请求不断返回404错误,即使路由似乎是正确的。当我添加POST请求时,put请求也停止工作,但在删除POST请求后又恢复正常工作。它一开始工作得很好,所以我可能犯了什么错误,但我找不到任何地方的错误。任何帮助将不胜感激。
这是handleSubmit函数:
const handleSubmit = async e => {
e.preventDefault()
const formData = new FormData();
formData.append('avatar', archivoImagen);
try {
const datosActualizados = {
nombre,
apellido,
usuarioID,
email,
descripcion,
fechaNacimiento,
};
const { data } = await clienteAxios.put(`/usuarios/perfil/${auth._id}`, datosActualizados)
const response = await clienteAxios.post(`/usuarios/perfil/avatar`, formData)
console.log(response)
setAlertaVisible(true)
setAlerta({
msg: data.msg,
error: false,
})
setTimeout(() => {
setAlertaVisible(false)
}, 3000);
} catch (error) {
这是我创建的routes文件:
import express from 'express';
import checkAuth from '../middleware/checkAuth.js';
import { upload } from '../middleware/multer.js';
import {
registrar,
autenticar,
confirmar,
olvidePassword,
comprobarToken,
nuevoPassword,
perfil,
editarPerfil,
usuarioIdDisponible,
} from '../controllers/usuarioController.js'
const router = express.Router();
router.post("/", registrar)
router.post("/login", autenticar)
router.get("/verificar-usuario", usuarioIdDisponible)
router.get('/confirmar/:token', confirmar)
router.post('/olvide-password', olvidePassword)
router.route('/olvide-password/:token')
.get(comprobarToken)
.post(nuevoPassword)
router.get('/perfil', checkAuth, perfil)
router.put('/perfil/:id', editarPerfil);
router.post('/perfil/avatar', upload.single('avatar'));
export default router;
我希望在handleSubmit函数被触发时,POST和PUT请求都能被触发,这样用户就可以通过PUT请求更新配置文件数据,还可以通过POST请求将头像图像发送到项目中的本地文件夹
1条答案
按热度按时间4nkexdtk1#
在upload.single()之后添加一个路由处理程序实际上起作用了!!
最后我用了这个:
});
非常感谢菲尔。你救了我的命!