علي العبدالله نشر 14 يوليو 2023 أرسل تقرير نشر 14 يوليو 2023 لدي مشروع وقمت بانشائه باك اند لارافل و فرونت اند رياكت (API) عندما كنت على اللوكال يتم تخزين التوكين ويتم جلب بيانات اليوزر من خلال المسار "api/user" ولكن بعد رفعه على استضافة hostinger - laravel و netlify - react لايتخزن التوكين ما السبب ؟ رغم اني غيرت الروابط في .env اقتباس
0 علي عبد محسن نشر 14 يوليو 2023 أرسل تقرير نشر 14 يوليو 2023 من السهل جداً أن نقع في كتابة العناوين بشكل خاطئ خصوصاً أن لديك خادمين منفصلين يعمل كل منهما على إستضافة مستقلة حسب ما ذكرت في سؤالك. فربما أنت لا ترسل ال auth token من الأصل فلا يتم إستلام شئ في backend وبالتالي لا يتم حفظه أو أن تعود لك رسالة الخطأ 401 عند محاولة الولوج الى محتوى محمي بمعنى أنك لم تسجل الدخول . أيضاً هل ال cors مفعلة لديك في backend ؟ وهل domain ال frontend لديك مسموح له في إعدادات cors بالولوج الى الخادم في backend؟ كل هذه تكهنات محتملة بدون وجود أكواد لمعاينتها وتشخيص الخلل. اقتباس
0 Mustafa Suleiman نشر 14 يوليو 2023 أرسل تقرير نشر 14 يوليو 2023 أولاً عليك تغيير الروابط المطلوبة في ملف .env على الاستضافة وحفظ التغييرات بشكل صحيح، وافحص الملف مرة أخرى وتأكد من أن الروابط الصحيحة تم تعيينها لمتغيرات البيئة. حيث أن هناك إعدادات خاصة بمتغيرات البيئة في الاستضافة وعليك ضبطها وإعداداها بناءًا على المتغيرات في مشروعك. وهل البيانات المرسلة بواسطة طلبات API تتم معالجتها بشكل صحيح وتخزينها بنجاح. وقد يفيد ااستخدم أدوات التطوير المتاحة مثل تفقد هل يوجد خطأ في الكونسول أو الإعتماد Postman للتحقق من طلبات API الصادرة والاستجابات المستلمة، وتحقق من رموز الاستجابة (response codes) والبيانات المرسلة والمستلمة للتأكد من أنه لا يوجد أي خطأ في عملية استدعاء البيانات وتخزينها. اقتباس
0 علي العبدالله نشر 14 يوليو 2023 الكاتب أرسل تقرير نشر 14 يوليو 2023 بتاريخ 2 ساعة قال علي عبد محسن: من السهل جداً أن نقع في كتابة العناوين بشكل خاطئ خصوصاً أن لديك خادمين منفصلين يعمل كل منهما على إستضافة مستقلة حسب ما ذكرت في سؤالك. فربما أنت لا ترسل ال auth token من الأصل فلا يتم إستلام شئ في backend وبالتالي لا يتم حفظه أو أن تعود لك رسالة الخطأ 401 عند محاولة الولوج الى محتوى محمي بمعنى أنك لم تسجل الدخول . أيضاً هل ال cors مفعلة لديك في backend ؟ وهل domain ال frontend لديك مسموح له في إعدادات cors بالولوج الى الخادم في backend؟ كل هذه تكهنات محتملة بدون وجود أكواد لمعاينتها وتشخيص الخلل. نعم لقد قمت باختبار الباك اند في Postman والبيانات تُرسل وتخزن بشكل صحيح وقمت بتعديل الملف في .env لكن لم ينجح الامر فضلاً وليس امراً ان اتواصل معك عبر الرسائل الخاصة وارسل لك رابط الكود على القت هب 1 اقتباس
0 Adnane Kadri نشر 14 يوليو 2023 أرسل تقرير نشر 14 يوليو 2023 يحتمل أن تكون هنالك أسباب عدة لمثل هاته المشكلة، ولذلك: تحقق من إعدادات الـ CORS في الخادم الخاص بك. خصوص إذا كنت تستخدم طريقة مصادقة مباشرة عبر API (مثل JWT)، قد تحتاج إلى ضبط إعدادات CORS للسماح بالوصول إلى الموارد عبر النطاقات المختلفة. تأكد من عدم وجود أي أخطاء في الكونسول مادامت أن المشكلة تحدث على مستوى تطبيق رياكت، قد يكون هنالك سبب يجعل من عدم الممكن تخزين التوكن على تطبيق العميل. قم بإختبار كل من التطبيقين على حدة واعمل على تضييق نطاق المشكلة، فتطبيق العميل مثلا يمكنك اختباره على بيئة التطوير مربوطا بتطبيق الخادم مرفوعا على الخادم، ثم تطبيق الخادم باستخدام بوستمان وحدد المشكلة. بما أنك تقوم بفصل تطبيق الخادم عن تطبيق العميل، فتأكد أيضا من تحديد base url المناسب لتطبيق الخادم في تطبيق العميل، يحتمل أنه لا يزال يشير إلى base url الخاص ببيئة التطوير. اقتباس
0 علي عبد محسن نشر 14 يوليو 2023 أرسل تقرير نشر 14 يوليو 2023 بتاريخ 1 ساعة قال علي العبدالله: نعم لقد قمت باختبار الباك اند في Postman والبيانات تُرسل وتخزن بشكل صحيح وقمت بتعديل الملف في .env لكن لم ينجح الامر فضلاً وليس امراً ان اتواصل معك عبر الرسائل الخاصة وارسل لك رابط الكود على القت هب يمكنك مشاركة جزء الكود المتعلق بالمشكلة هنا. إذا كنت تطور تطبيقاً لأجل عملك مثلاً ، فليس من الحكمة مشاركة كامل المشروع. اقتباس
0 Mustafa Suleiman نشر 14 يوليو 2023 أرسل تقرير نشر 14 يوليو 2023 بتاريخ 2 ساعة قال علي العبدالله: نعم لقد قمت باختبار الباك اند في Postman والبيانات تُرسل وتخزن بشكل صحيح وقمت بتعديل الملف في .env لكن لم ينجح الامر فضلاً وليس امراً ان اتواصل معك عبر الرسائل الخاصة وارسل لك رابط الكود على القت هب عليك بإضافة متغيرات البيئة Environment variables في Netlify تفقد التالي: https://docs.netlify.com/environment-variables/overview/ https://docs.netlify.com/environment-variables/get-started/#import-variables-with-the-netlify-ui اقتباس
0 Hessen Nasser نشر 14 يوليو 2023 أرسل تقرير نشر 14 يوليو 2023 هناك عدة أسباب محتملة لعدم تخزين التوكن بشكل صحيح بعد رفع مشروعك على استضافة مختلفة. يمكنك مراجعة النقاط التالية لحل المشكلة: التحقق من إعدادات ملف .env: تأكد من أنك قمت بتعديل روابط قاعدة البيانات وإعدادات الاستضافة الجديدة في ملف .env الخاص بتطبيق Laravel. تأكد من صحة المعلومات المتعلقة بالتخزين وقاعدة البيانات وأنها تتوافق مع إعدادات الاستضافة الجديدة. التحقق من إعدادات الاستضافة الجديدة: تحقق من أن استضافة Laravel واستضافة React قد تم تكوينهما بشكل صحيح وفقًا للمتطلبات اللازمة لتخزين التوكنات. تحقق من الإعدادات اللازمة في استضافة Laravel للسماح بتخزين واستعادة التوكنات بشكل صحيح. التحقق من إعدادات التحقق في Laravel: تأكد من أنك قمت بتحديث إعدادات التحقق والمصادقة في Laravel بشكل صحيح. تحقق من استخدام جلسات Laravel وأن التطبيق مُعين لتخزين التوكنات بشكل صحيح في الجلسة. التحقق من إعدادات الاستضافة: تحقق من الإعدادات الخاصة بالاستضافة الجديدة. قد تحتاج إلى إعدادات خاصة للسماح بتخزين التوكنات. تواصل مع مزود الاستضافة للتأكد من أن الإعدادات اللازمة مُفعّلة ومسموح بها لتخزين التوكنات. فحص أخطاء السجل: تحقق من ملفات السجل (logs) في Laravel للبحث عن أي أخطاء أو رسائل تحذير توضح المشكلة. يمكن أن تزودك هذه السجلات بمعلومات إضافية حول مشكلة عدم تخزين التوكن. تحقق من تكوين تطبيق React: تأكد من أنك تنفذ طرق الاسترجاع والحفظ للتوكنات بشكل صحيح في تطبيق React الخاص بك. تحقق من كيفية الوصول إلى توكنات المستخدم في طرفية العميل (client-side) والتأكد من نقلها وتخزينها بشكل صحيح. إذا استمرت المشكلة، يفضل التواصل مع دعم الاستضافة الخاصة بك أو فريق دعم Laravel للحصول على مساعدة إضافية ودعم تقني لتشخيص وحل المشكلة بشكل دقيق. اقتباس
السؤال
علي العبدالله
لدي مشروع
وقمت بانشائه باك اند لارافل و فرونت اند رياكت
(API)
عندما كنت على اللوكال
يتم تخزين التوكين ويتم جلب بيانات اليوزر من خلال المسار "api/user"
ولكن بعد رفعه على استضافة hostinger - laravel
و netlify - react
لايتخزن التوكين
ما السبب ؟
رغم اني غيرت الروابط في .env
7 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.