Hice tantas cosas para resolver este problema, no lo hice. así que estoy haciendo algunas preguntas relacionadas con algún error
cuando ejecuto el servidor de código y el lado del cliente sin ningún error. pero la pantalla está en blanco y la consola muestra un error: [App.js:24] POST http://localhost:5000/authentication/verify 401 (No autorizado)
https://github.com/ousecTic/pern-jwt-tutorial << el enlace
de todos modos, solo escribo el código a continuación, pero no funciona.
app.js (lado del cliente)
import React, { Fragment, useState, useEffect } from "react"; import "react-toastify/dist/ReactToastify.css"; import { BrowserRouter as Router, Route, Switch, Redirect } from "react-router-dom"; import { toast } from "react-toastify"; //components import Login from "./components/Login"; import Register from "./components/Register"; import Dashboard from "./components/Dashboard"; toast.configure(); function App() { const checkAuthenticated = async () => { try { const res = await fetch("http://localhost:5000/authentication/verify", { method: "POST", headers: { jwt_token: localStorage.token } }); const parseRes = await res.json(); parseRes === true ? setIsAuthenticated(true) : setIsAuthenticated(false); } catch (err) { console.error(err.message); } };servidor.js (lado del servidor)
const express = require("express"); const app = express(); const cors = require("cors"); //middleware app.use(cors()); app.use(express.json()); //routes app.use("/authentication", require("./routes/jwtAuth")); app.use("/dashboard", require("./routes/dashboard")); app.listen(5000, () => { console.log(`Server is starting on port 5000`); });jwtauth (lado del servidor)
router.post("/verify", authorize, (req, res) => { try { res.json(true); } catch (err) { console.error(err.message); res.status(500).send("Server error"); } }); module.exports = router;y ya he comprobado debajo de algunas cosas.
y este es mi código completo: https://github.com/Ryandongyou/jwt_project_dongyou gracias :)