محمود_سعداوي نشر 27 أكتوبر 2023 أرسل تقرير مشاركة نشر 27 أكتوبر 2023 (معدل) السلام عليكم. في الكود التالي لا يمكنني التوجه إلى صفحة تسجيل الدخول const user = JSON.parse(localStorage.getItem('user')) || null useEffect(() => { likeImage(); }, [like]); const likeImage = async () => { user ? await axios .put(`/api/images/like/${imageId}`, { headers: { "Content-Type": "application/json", "x-auth-token": user?.data?.token, }, }) .then((res) => { setLike(res?.data); }) .catch((err) => setError(err.response.data.msg)) : navigate('/login') }; ************************* <div className="like" onClick={likeImage}> <i className="fa-regular fa-thumbs-up"></i> 200 </div> تظهر رسالة الخطأ التالية PUT http://localhost:3000/api/images/like/65381befd6729f8158b384a9 401 (Unauthorized) شكرا لكم على المساعدة تم التعديل في 27 أكتوبر 2023 بواسطة Mustafa Suleiman تعديل عنوان السؤال 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
0 Mustafa Suleiman نشر 27 أكتوبر 2023 أرسل تقرير مشاركة نشر 27 أكتوبر 2023 المشكلة هي أنك لا تتحقق مما إذا كان المستخدم مسجلاً الدخول أم لا قبل محاولة إرسال طلب PUT إلى /api/images/like، وفي حال كان المستخدم غير مسجل الدخول، فستتلقى خطأ 401 (غير مصرح به). وعليك إضافة شرط إلى دالة likeImage للتحقق مما إذا كان المستخدم مسجلاً الدخول أم لا، وإن لم يكن المستخدم مسجلاً الدخول، فتستطيع توجيهه إلى صفحة تسجيل الدخول. const user = JSON.parse(localStorage.getItem('user')) || null; useEffect(() => { likeImage(); }, [like]); const likeImage = async () => { if (!user) { navigate('/login'); return; } await axios .put(`/api/images/like/${imageId}`, { headers: { "Content-Type": "application/json", "x-auth-token": user?.data?.token, }, }) .then((res) => { setLike(res?.data); }) .catch((err) => setError(err.response.data.msg)); }; اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
محمود_سعداوي
السلام عليكم.
في الكود التالي لا يمكنني التوجه إلى صفحة تسجيل الدخول
تظهر رسالة الخطأ التالية
PUT http://localhost:3000/api/images/like/65381befd6729f8158b384a9 401 (Unauthorized)
شكرا لكم على المساعدة
تم التعديل في بواسطة Mustafa Suleimanتعديل عنوان السؤال
رابط هذا التعليق
شارك على الشبكات الإجتماعية
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.