Facebook Connect Graph API - لماذا لا يمكنني استرداد جميع تفاصيل المستخدم؟

StackOverflow https://stackoverflow.com/questions/3411700

  •  26-09-2019
  •  | 
  •  

سؤال

أشعر أن كل سؤال آخر أطرحه هنا يتعلق بـ Facebook Connect - وهذا يقول الكثير عن واجهة برمجة التطبيقات الخاصة بهم. على أي حال ، هذه هي السياسة ، أنا أستطرد ..

أحاول سحب تفاصيل المستخدم من واجهة برمجة تطبيقات الرسم البياني للاستخدام في طلبي (وهو موقع الويب الخارجي FBML - JavaScript SDK للمصادقة).

لقد طلبت الأذونات التالية من المستخدم: (باستخدام مربع الحوار العادي)

  • publish_stream
  • البريد الإلكتروني

هذا يعمل ، ويسمح لي بالنشر إلى جدار المستخدم ، والاستيلاء على بريده الإلكتروني من API الرسم البياني.

ولكن عندما أقوم بـ HTTP ، احصل على طلب إلى عنوان URL التالي:

https://graph.facebook.com/uid؟access_token=oat (حيث UID = معرف المستخدم للمستخدم الذي أحاول الحصول على التفاصيل ، و OAT = رمز OAUTH لدي).

كل ما يعود في JSON هو معرف المستخدم (الذي لدي بالفعل ، لأن IM أضعه في عنوان URL) والبريد الإلكتروني.

لماذا لا يمكنني الحصول على أشياء مثل الاسم الأول ، الاسم الأخير ، اللغة ، إلخ؟

هل أستخدم عنوان URL الخاطئ؟ هل رمز Oauth الخاص بي خاطئ؟

أحصل على رمز Oauth من هنا:

https://graph.facebook.com/oauth/access_token؟tepe=client_cred&client_id=myappid&client_secret=myappsecret

تحديث:

يبدو أن المشكلة هي رمز Oauth الخاص بي.

لأنه عندما أذهب إلى المستندات: http://developers.facebook.com/docs/api

واستخدم عينة Oauth Token للمستخدم IM الذي يحاول استرداده ، فإنه يحصل على جميع التفاصيل.

أي شخص يعرف ما هو الخطأ في مكالمة رمز Oauth؟

هل كانت مفيدة؟

المحلول

لذلك ، كنت أستخدم عنوان URL الخاطئ لتبادل Oauth. يجب أن يكون هذا:https://graph.facebook.com/oauth/exchange_sessions؟type=client_cred&client_id=myappid&client_secrete=myappsecret&sessions=userseshid

كان عنوان URL الذي كنت أستخدمه وفقًا لـ DOCO ، وهو ما يقل أعلاه والذي يعمل في أي مكان يمكن العثور عليه.

أنا في المرحلة مع FBC لم أعد أهتم بـ كيف, ، إذا نجح ، كن شاكراً حتى يفعل ذلك والمضي قدمًا.

تعديل:

أيضًا ، كنت أتساءل لماذا ستتوقف مكالمات واجهة برمجة تطبيقات الرسم البياني دون سبب.

الجواب هو أنني بحاجة لمقارنة مفتاح الجلسة المستخدمة الحصول على رمز Oauth ، مع مفتاح الجلسة حاليًا في ملفات تعريف الارتباط. إذا كانت مختلفة ، كنت بحاجة إلى الحصول على رمز Oauth جديد.

مفتاح الجلسة المستخدم في أي رمز Oauth هو جزء من رمز Oauth الفعلي:

aaa|bbbb|cccc

حيث BBBB هو مفتاح الجلسة. لذلك أنا فقط أقارن ذلك قبل إجراء أي مكالمات واجهة برمجة تطبيقات الرسم البياني.

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