مشكلة في إعادة توجيه sso لإنشاء موضوع جديد مملوء مسبقًا عبر URL

مرحبًا

أقوم بتنفيذ خدمة مصادقة خاصة بي كمزوّد SSO لمنصة Discourse. تعمل بشكل جيد. لكن عندما يفتح مستخدمو (غير المسجلين) رابط موضوع مملوء مسبقًا، فإنهم لا يرون البيانات المملوءة مسبقًا بعد إعادة التوجيه إلى Discourse.

السيناريو الكامل:

  • يفتح مستخدم غير مسجل رابط إنشاء موضوع مملوء مسبقًا
  • يتم إعادة توجيهه تلقائيًا إلى صفحة SSO
  • يسجل الدخول باستخدام SSO ثم يُعاد توجيهه إلى http://discourse_site/session/sso_login?....
  • هنا أتوقع أن يرى المستخدم مربع إنشاء الموضوع مع البيانات المملوءة، لكن Discourse يعرض فقط صفحة أحدث المواضيع. بل لا يظهر حتى مربع إنشاء الموضوع

هل يمكن لأي شخص مساعدتي في هذه المشكلة؟ هل هناك مشكلة في إعداداتي أم أنها خطأ برمجي؟

يمكنني أيضًا التأكيد أنه إذا كنت داخل موضوع معين واضغطت على تسجيل الدخول، فإن إعادة التوجيه ستعمل بشكل صحيح وسأعود إلى ذلك الموضوع.

إعجابَين (2)

حاول استخدام المنهجية الموضحة هنا: Creating pre-filled personal message links - #11.

إعجابَين (2)

حسناً، إنه يعمل. شكرًا جزيلاً لك.

الرسالة القديمة:

شكرًا لك @simon على ردك. للأسف لم أستطع جعل الأمر يعمل. في الرابط الخاص بك، كان يُشار إلى استخدام رابط مثل:

http://localhost:3000/session/sso?return_path=http%3A%2F%2Flocalhost%3A3000%2Fnew-message%3Fusername%3Dscossar%26title%3DInformation+requested+about+gentle+yoga+classes
في البداية، افترضت أنه يجب إضافته إلى المرحلة 6 من وثائق SSO الرسمية لـ Discourse. وبالتالي سيكون الشكل كالتالي:

http://discourse_site/session/sso_login?sso=payload&sig=sig&return_path=https%3A%2F%2Fdiscourse_site%2Fnew-message%3Fusername%3Dscossar%26title%3DInformation%2Brequested%2Babout%2Bgentle%2Byoga%2Bclasses

لكنه لم يعمل. لذا بدأت في تجربته في أماكن مختلفة ولم ينجح أي منها. هل يمكنك التوضيح أكثر حول المكان الذي يجب أن أضع فيه return_path؟

إعجاب واحد (1)

كل ما تحتاجه هو إنشاء رابط بالصيغة المذكورة في ذلك المنشور. ستحتاج إلى استبدال عنوان URL الصحيح لموقع Discourse الخاص بك، وتغيير اسم المستخدم من scossar إلى اسم مستخدم موجود بالفعل على موقعك. لا تقم بإضافة معاملات payload أو sig إلى الرابط. فكل ذلك يتم تلقائيًا من خلال تطبيق SSO الحالي لديك. كل ما يفعله معامل return_path هو إعادة توجيه المستخدم إلى عنوان URL سينشئ موضوعًا مُعبَّأ مسبقًا.

لاحظ أنه في المثال الذي ربطتُ به، كنتُ أنشئ رسالة مُعبَّأة مسبقًا وليس موضوعًا. ستحتاج إلى تعديل معامل return_path المذكور في كود المثال لإنشاء موضوع بدلاً من رسالة.

إعجاب واحد (1)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.