Maison > interface Web > js tutoriel > Demande abandonnée (NS_BINDING_ABORT) dans Firefox mais fonctionnant dans les navigateurs restants

Demande abandonnée (NS_BINDING_ABORT) dans Firefox mais fonctionnant dans les navigateurs restants

Barbara Streisand
Libérer: 2024-11-14 15:38:02
original
657 Les gens l'ont consulté

Request Aborted (NS_BINDING_ABORT) In Firefox but working in remaining browsers

const Login = () => {

  const { isAuthenticated } = useSelector(

    (rootState : RootState) => rootState.auth

  );

 const router = useRouter();

 const dispatch = useDispatch();

 const searchParams = useSearchParams();

 const [isLoading, setIsLoading] = useState(false);

  const [passwordVisible, setPasswordVisible] = useState(false);

  const togglePasswordVisibility = () => {

    setPasswordVisible(!passwordVisible);

  };

 const ValidationSchema = z.object({

    email : z.string().email("Veuillez saisir une adresse e-mail valide"),

    mot de passe : z

      .string()

      .min(8, "Le mot de passe doit comporter au moins 8 caractères")

      .max(20, "Le mot de passe ne peut pas dépasser 20 caractères"),

    Remember_me : z.boolean().optional().default(false),

  });

 const [isPending, setIsPending] = useState(false);

  tapez ValidationSchemaType = z.infer;

  useEffect(() => {

    if (isAuthenticated) {

      router.push("/app");

    }

  }, [isAuthenticated]);

 const {

   regarde,

   setValue,

    inscrivez-vous,

    handleSubmit,

    formState : { erreurs },

  } = useForm({

    résolveur : zodResolver(ValidationSchema),

  });

  const handleGetProfileData = async () => {

    essayez {

      const réponse = attendre axios.get(${API_URL}/users/api/v1);

      const userData = réponse?.data?.data;

      return userData ;

    } capture (erreur) {

      console.log(erreur);

    }

  };

  const onSubmit : SubmitHandler = données asynchrones => {

    setIsPending(true);

    essayez {

      const validatedData = ValidationSchema.parse(data);

      const réponse = attendre axios.post(

        API_URL "/users/api/v1/auth/login",

        validatedData

      );

      const expiryTime = watch("remember_me")

        ? 30*24*60*60*1000

        : 7*24*60*60*1000;

      setCookie("token", réponse.data.data.token, {

        sécurisé : vrai,

       mêmeSite : "aucun",

        expire : new Date(Date.now() expiryTime),

        // domaine : process.env.NEXT_PUBLIC_APP_BASE_URL,

      });

      const userData = wait handleGetProfileData();

      dispatch(login(userData));

      router.push("/app");

      toast.success(response.data.message);

    } catch (erreur : n'importe laquelle) {

      if (erreur.réponse) {

        toast.error(error.response.data.message);

      } autre {

        toast.error(error.message);

      }

      console.error("Échec de la connexion :", erreur);

    } enfin {

      setIsPending(false);

    }

  };

retour(
//reste du code
);
};

J'ai écrit comme ceci pour l'authentification des utilisateurs. Mais la demande d'erreur est annulée.
-> J'ai entré les informations d'identification et je les ai envoyées au backend.
-> Le jeton génère et reçoit un message de réussite.
-> Après cela, je dois rediriger vers la page de l'application. mais lors de la redirection, la demande est abandonnée.

Quelqu'un peut-il m'aider à résoudre ce problème

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal