الانتقال إلى المحتوى الرئيسي
تُنشئ نقطة نهاية generateJWT عنوان URL لربط الشبكات الاجتماعية لـ User Profile واحد. راجع تكامل API لخطة Business وخطة Launch لمزيد من التفاصيل.

التبديل بين الملفات الشخصية

للتبديل بين جلسات الملفات الشخصية المختلفة (على سبيل المثال، عند الاختبار بعدة ملفات شخصية)، ستحتاج إلى تسجيل خروج الملف الشخصي الحالي أولاً. راجع تسجيل الخروج التلقائي من جلسة الملف الشخصي للاطلاع على تعليمات كيفية التعامل مع تبديل الملفات الشخصية بشكل صحيح.

Private Key و Profile Key

من أين تحصل على Private Key

يتم تضمين ملف Private Key (private.key) وملف JSON نموذجي لـ Postman مع Integration Package الذي تتلقاه أثناء التسجيل. يمكن أيضًا استرداد Integration Package في لوحة تحكم مطوري Ayrshare في صفحة API -> Integration Package.

استخدام Private Key

نوصي بقراءة Private Key private.key من ملف وإرساله كسلسلة في حقل privateKey، مما يتيح لك الحفاظ على جميع الأحرف بما في ذلك أسطر جديدة. يجب أن يكون Private Key دقيقًا، أي الحفاظ على جميع الأحرف بما في ذلك أسطر جديدة. إذا قمت بلصق المفتاح في التعليمات البرمجية الخاصة بك، فقد تحتاج إلى استبدال أسطر جديدة يدويًا بحرف \n أو ترميز السلسلة بترميز URL. يؤدي لصق المفتاح مباشرة في التعليمات البرمجية غالبًا إلى مشكلات.

توليد JSON Web Token

مقطع فيديو مدته دقيقة واحدة يشرح كيفية توليد JSON Web Token (JWT):
عنوان URL الخاص بـ JWT صالح لمدة 5 دقائق. بعد 5 دقائق، يجب عليك إنشاء عنوان URL جديد لـ JWT. راجع Max Pack expiresIn لخيارات إضافية.

فتح عنوان URL الخاص بـ JWT

افتح عنوان URL الخاص بـ JWT في علامة تبويب متصفح جديدة أو نافذة متصفح جديدة أو View Controller على iOS. يمكنك التحكم في إغلاق أو إعادة توجيه النافذة أو علامة التبويب الجديدة.
لا تسمح الشبكات الاجتماعية بفتح عنوان URL في iFrame أو إخفاء نطاق أصل الشريك المعتمد profile.ayrshare.com.

التحقق من عنوان URL الخاص بـ JWT

لا تتحقق نقطة نهاية generateJWT من عنوان URL الخاص بـ JWT المُعاد بشكل افتراضي. على سبيل المثال، إذا تم تمرير Private Key تالف إلى generateJWT، فسيتم إرجاع عنوان URL على أي حال وسيؤدي عنوان URL إلى خطأ 401. يمكنك التحقق من عنوان URL الخاص بـ JWT المُعاد بتضمين verify: true في معاملات جسم generateJWT. إذا تعذر التحقق من عنوان URL الخاص بـ JWT، فسيتم إرجاع خطأ. على سبيل المثال، إذا تمت إزالة حرف من Private Key، فسيتم إرجاع ما يلي:
JWT Error
نوصي باستخدام verify: true فقط في بيئة غير إنتاجية نظرًا لأن التحقق يستغرق وقت معالجة إضافيًا.

الاختبار في Postman

يوصى أولاً باختبار إنشاء عنوان URL الخاص بـ JWT في Postman. يتضمن Integration Package، الذي يتم العثور عليه في صفحة Primary Profile API Key من لوحة التحكم، ملف تكوين JSON نموذجي لـ Postman يتضمن كل ما تحتاجه للتحقق من إنشاء عنوان URL الخاص بـ JWT. ما عليك سوى استيراد ملف التكوين إلى Postman، وملء Profile Key (الذي يمكن العثور عليه في لوحة تحكم مطوري Ayrshare بالتبديل إلى الملف الشخصي الذي تريد اختباره) في حقل body الخاص بـ profileKey، والنقر على زر Send الأزرق. جميع الحقول الأخرى المطلوبة مملوءة بالفعل. يمكنك أيضًا توليد التعليمات البرمجية من Postman، أو قراءة ملف المفتاح من دليل أو قاعدة بيانات.

طريقة ربط Instagram

يمكن ربط حسابات Instagram بـ طريقتين: مباشرة عبر Instagram Login، أو عبر Facebook Page متصلة. يتم التحكم في التدفق الذي يبدأ عند نقر المستخدم على زر Instagram في صفحة الربط الاجتماعي عادةً بواسطة إعداد Instagram Login على مستوى الحساب في لوحة التحكم. يتيح لك معامل الجسم instagramLinkMethod لـ نقطة نهاية generateJWT تجاوز هذا الإعداد لعنوان URL واحد للربط: على سبيل المثال، إذا كان افتراضي حسابك هو ربط Facebook Page، فإن ما يلي يفرض تسجيل دخول Instagram مباشرًا لجلسة الربط هذه فقط:
Instagram Link Method
سيتضمن عنوان URL الخاص بـ JWT الذي تم إنشاؤه التجاوز، وسيبدأ النقر على زر Instagram في صفحة الربط التدفق المطلوب لمدة تلك الجلسة — بما في ذلك عبر إعادة توجيه التفويض في Instagram/Facebook. بعض الأمور التي يجب معرفتها:
  • ينطبق التجاوز فقط على صفحة الربط المفتوحة من عنوان URL المُعاد. لا يغير إعداد Instagram Login على مستوى الحساب أو يؤثر على جلسات الربط الأخرى.
  • إذا تم حذف instagramLinkMethod، تستخدم صفحة الربط إعداد حسابك، تمامًا كما كان من قبل.
  • إذا تم إرسال قيمة غير صالحة، يتم إرجاع خطأ 400 يسرد القيم الصالحة (instagram، facebook).
  • راجع اختلافات الميزات بين التدفقين قبل اختيار التجاوز — بعض ميزات Instagram، مثل البحث عن الوسوم والتعاون، متاحة فقط مع مصادقة Facebook Page.

JWT Expires In

إذا كنت تريد مهلة JWT أطول من الافتراضي البالغ 5 دقائق، فقم بتضمين حقل expiresIn. على سبيل المثال، أرسل JSON التالي لضبط عنوان URL الخاص بـ JWT ليكون صالحًا لمدة 30 دقيقة:
JWT Expires In
يتيح لك ذلك إرسال الرابط بالبريد الإلكتروني إلى مستخدميك بدلاً من الحاجة إلى الانتقال إلى تطبيقك أو منصتك. حالة الاستخدام الشائعة هي عندما يحتاج مستخدمك إلى إعادة توصيل حساب اجتماعي، يمكنك إرسال رابط JWT بالبريد الإلكتروني إليه لإعادة ربط الحساب الاجتماعي مباشرة بدلاً من الاضطرار إلى الانتقال إلى منصتك.
تأكد من مراجعة فريق الأمان الخاص بك بشأن المدة التي يريد نشاطك التجاري إبقاء JWT فيها نشطًا. أوقات انتهاء الصلاحية الأطول تخلق مخاطر إضافية لوصول طرف غير مصرح به إلى الرابط.

التكاملات

Bubble.io JWT

إذا كنت مستخدم Bubble، فيُرجى مراجعة Generate JWT Token في قسم Bubble.io للتعليمات:

Bubble Generate JWT

Mobile JWT

توضح أمثلة التعليمات البرمجية للأجهزة المحمولة التالية بلغات Swift وFlutter وReact Native كيفية إطلاق صفحة الربط الاجتماعي على جهاز iOS. استبدل متغير السلسلة النصية jwtURL بالقيمة المُعادة من نقطة نهاية /generateJWT.

Swift (iOS)

في Swift، استخدم UIViewController وSFSafariViewControllerDelegate. لا نوصي باستخدام WebView لأن بعض الشبكات الاجتماعية مثل Facebook وGoogle تحظر المصادقة.

Flutter (Dart)

في Flutter (Dart)، لا يوجد ما يعادل مباشرة UIViewController أو SFSafariViewController. ومع ذلك، يمكنك تحقيق وظيفة مماثلة باستخدام حزمة url_launcher لفتح عناوين URL للويب.

React Native

لا يحتوي React Native أيضًا على مكافئ مباشر لـ SFSafariViewController، ولكن يمكنك تحقيق نتيجة مماثلة باستخدام واجهة برمجة تطبيقات WebBrowser التي توفرها expo-web-browser، والتي تفتح عنوان URL في نافذة متصفح مشروطة تشترك في ملفات تعريف الارتباط مع متصفح النظام. وإلا يمكنك استخدام دالة Linking المدمجة في React Native لفتح Safari: await Linking.canOpenURL(jwtURL);

أمثلة التعليمات البرمجية للأجهزة المحمولة

البريد الإلكتروني لربط الحسابات

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

JSON لربط الحسابات

على سبيل المثال، سيرسل JSON التالي بريدًا إلكترونيًا إلى john@user.com باسم الشركة ACME، والبريد الإلكتروني للاتصال support@mycompany.com، وروابط إلى الشروط وسياسة الخصوصية:
Example Contact Email Request
ستتضمن الاستجابة ما يلي إذا تم ضبط البريد الإلكتروني ووقت انتهاء الصلاحية:
Example Contact Email Response

مثال البريد الإلكتروني JWT لربط الحسابات

فيما يلي مثال على بريد إلكتروني يحتوي على رابط Connect Account الذي يفتح صفحة الربط الاجتماعي: JWT Email سيأتي البريد الإلكتروني من العنوان: Social Connect Hub <connect@socialconnecthub.com>