Skip to main content
تُنشئ نقطة نهاية generateJWT عنوان URL لربط الشبكات الاجتماعية لـ User Profile واحد. راجع تكامل API لخطة Business وخطة Launch لمزيد من التفاصيل.
لم يُعد generateJWT الطريقة الوحيدة لإنشاء رابط ربط. فهو لا يزال يعمل ولا تزال هذه الصفحة تشرحه، لكن في التكاملات الجديدة استخدم إنشاء Link Session — فهو لا يحتاج إلى أي مفتاح خاص، ويتيح لك معرفة ما إذا كان الرابط قد فُتح أو إبطاله قبل انتهاء صلاحيته.تستخدم نقطتا النهاية المُحقِّق نفسه، لذا فإن كل ما في هذه الصفحة عن expiresIn وallowedSocial وinstagramLinkMethod وredirect وlogout وبريد Connect Accounts ينطبق على أيٍّ منهما. ويحتفظ generateJWT بثلاثة تسامحات صغيرة ترفضها نقطة النهاية الأحدث: شبكة غير معروفة في allowedSocial، ونصف واحد فقط من بيانات اعتماد X، وredirect غير نصي.

إرسال رابط الربط

يُسجّل رابط الربط دخول مستخدمك إلى ملفه، لذا تعامل معه كما تتعامل مع كلمة المرور. أرسله عبر قناة تثق بها، ولا تُدرجه في السجلات، ولا تُمرّره إلى طرف ثالث. ويظل صالحًا للاستخدام خلال نافذته الزمنية بأكملها، لذا يعمل إعادة التحميل أو إعادة محاولة OAuth — لكن أرسل كل رابط إلى مستخدم واحد فقط، وأنشئ رابطًا منفصلًا لكل شخص.

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

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

Profile Key

يحدّد profileKey أي User Profile يخصّه رابط الربط. يمكنك العثور عليه في لوحة المطوّر في Ayrshare بالتبديل إلى ذلك الملف.
لم تُعد Private Key مستخدمة. روابط الربط غير موقّعة، لذا لا يوجد ما يُقرأ من ملف أو يُلصق في التعليمات البرمجية. ولا يزال privateKey يُقبل ويُتجاهل، لذا تستمر عمليات التكامل الحالية في العمل، ويمكن ترك ملف private.key في Integration Package دون استخدام.

إنشاء رابط ربط

فيديو مدته دقيقة واحدة يوضّح كيفية إنشاء رابط ربط. سُجّل قبل Link Sessions، لذا لا يزال يُظهر إرسال Private Key؛ لم تُعد هذه الخطوة لازمة.
عنوان URL الخاص بـ JWT صالح لمدة 5 دقائق. بعد 5 دقائق، يجب عليك إنشاء عنوان URL جديد لـ JWT. راجع Max Pack expiresIn لخيارات إضافية.

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

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

التحقق من الرابط

لم يُعد verify: true مستخدمًا. يُقبل ويُتجاهل. لا يوجد توكن موقّع للتحقق منه: يتم التحقق من token المُعاد عبر صفحة الربط عندما يفتح مستخدمك الرابط. كان هذا الخيار في السابق يعيد تحليل الـ JWT باستخدام Private Key الخاص بك، لاكتشاف مفتاح تالف قبل إرسال الرابط. وبعد اختفاء المفتاح من العملية، لم يُعد هذا النوع من الأخطاء ممكنًا.

الاختبار في Postman

يوصى أولاً باختبار إنشاء عنوان URL الخاص بـ JWT في Postman. يتضمّن Integration Package، المتوفر في صفحة API Key الخاصة بـ Primary Profile في اللوحة، ملف إعداد JSON نموذجيًا لـ Postman. ما عليك سوى استيراد ملف التكوين إلى Postman، وملء Profile Key (الذي يمكن العثور عليه في لوحة تحكم مطوري Ayrshare بالتبديل إلى الملف الشخصي الذي تريد اختباره) في حقل body الخاص بـ profileKey، والنقر على زر Send الأزرق. لا يزال الإعداد النموذجي يملأ privateKey وdomain مسبقًا. يُتجاهل privateKey، ويمكنك إفراغ domain إلا إذا كان لحسابك أكثر من نطاق ربط واحد. يمكنك أيضًا توليد التعليمات البرمجية من 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

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

التكاملات

Bubble.io

إذا كنت مستخدم Bubble، فيُرجى مراجعة إنشاء رابط ربط في Bubble في قسم Bubble.io للتعليمات:

Bubble linking URL

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 الذي يفتح صفحة الربط الاجتماعي: سيأتي البريد الإلكتروني من العنوان: Social Connect Hub <connect@socialconnecthub.com>