قمنا بإعداد تسجيل الدخول الموحد (SSO) لمنتدانا، لكن أيقونة صورة المستخدم لا تتحدث كما نتوقع:
عند تغيير الصورة في مزوّد SSO الخاص بنا، نرسل الحمولة التالية إلى خادم Discourse:
$encodedPayload = base64_encode(
$decodedPayload
. '&return_sso_url=' . env('DISCOURSE_SSO_URL')
. '&email=' . auth()->user()->email
. '&primary_email=' . auth()->user()->email
. '&external_id=' . auth()->user()->id
. '&name=' . auth()->user()->name
. '&username=' . auth()->user()->nickname
. '&avatar_url=' . auth()->user()->avatar
. '&avatar_force_update=true'
. '&admin=' . (auth()->user()->isAdmin ? 'true' : 'false')
);
عند تصفّح صفحة في منتدى Discourse، لا تتغيّر الصورة (وهذا متوقّع)، لكنها لا تتغيّر أيضًا عند تحديث الصفحة المعنية أو الانتقال إلى صفحة جديدة (رغم أننا نستطيع رؤية في وحدة التحكم أنه تم جلب الصورة الجديدة بالفعل).
نحتاج إلى تسجيل الخروج ثم تسجيل الدخول مرة أخرى حتى تتغيّر الصورة.
عند تغيير الصورة، يتم توليد اسم ملف جديد لها، ونحن نرسل دائمًا avatar_force_update بقيمة true.
هل هناك شيء نغفله؟