سؤال

أحاول الحصول على إذن من المستخدمين لـ "Online_access" في تطبيق iframe على Facebook مشفر مع Facebook Java API. أفهم أنني بحاجة إلى الحصول على "مفتاح جلسة غير محددة" بعد أن يوافق المستخدمون على طلبي. حاليًا ، يمكنني تحقيق ما أريد ، ولكن بطريقة محرجة للغاية ربما لا تكون صحيحة. يجب أن يكون هناك طريقة أفضل للقيام بذلك. أي أفكار/أفكار سيكون موضع تقدير !!

ما الذي فعلته

في Servlet في تطبيقي ، أتحقق لمعرفة ما إذا كان المستخدم حاليًا لديه إذن "Online_Access". إذا فعلوا ذلك ، أحصل على عنوان URL Permission.authorizeUrl(Permission.OFFLINE_ACCESS). ثم اتصل response.redirect للوصول إلى صفحة الأذونات. مشكلتان أواجهان هما:

  1. يتم عرض صفحة الأذونات المعاد توجيهها داخل IFRAME. وبالتالي ، يتم عرض شريط قائمة Facebook Book Home وما إلى ذلك مرتين. أي أن يبدو أن التطبيق مضمن في تطبيق آخر.
  2. سيتم "تعليق" المستخدم على صفحة الإذن بمجرد إعادة توجيهها إلى هناك. لن أتمكن من الحصول على "مفتاح الجلسة غير المحدد" (عن طريق الاتصال client.getCacheSessionKey) ما لم يعود المستخدم إلى صفحة في تطبيقي يدويًا.

محتملة العمل ؟؟

  • هل هناك طريقة لفتح/إعادة التوجيه إلى صفحة الأذونات في نافذة جديدة؟ وبهذه الطريقة ، ربما يمكنني الحصول على موضوع في servlet الخاص بي لمواصلة التحقق مما إذا كان يتم تعيين الإذن بعد إعادة التوجيه. وبعد ذلك يمكنني الحصول على "مفتاح الجلسة غير المحددة" بمجرد أن أحصل عليه وتخزينه في مكان ما؟
  • هل هناك طريقة لتعيين عنوان URL لـ Facebook للذهاب إليه بعد تعيين الإذن؟ (يشبه إلى حد كبير إعدادات URL قبل Auth و Post-Auth؟) أو السيطرة بطريقة أو بأخرى بعد ضرب صفحة الإذن؟
  • أي طرق أخرى لإعداد تطبيقي ربما ؟؟ كوني مبتدئًا ، ربما أخطأت في الفكرة ...
هل كانت مفيدة؟

المحلول

هل حاولت استخدام fb:promot-permission العلامة في XFBML؟ قد يبدو ذلك أبسط طريقة للحصول على الإذن الممنوح ، و XFBML سهل الإعداد إلى حد ما.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top