مرجع API: قرار دادن پلیر امن در هر سایت

برای برنامه‌نویس‌ها۳ دقیقه مطالعه

مرجع کامل نمایش پلیر امن XAPlayer در سایت خودتان: روند کار، درخواست embed-tokens، فیلدها، پاسخ، iframe و خطاها؛ با نمونه‌کد curl، Node.js و پایتون.

همه‌ی راهنماها

اگر دوره را در سایت خودتان می‌فروشید، دانشجو به کد لایسنس نیازی ندارد: سرور سایت شما برای دانشجوی واردشده یک توکن کوتاه‌مدت می‌گیرد و پلیر داخل صفحه‌ی درس نمایش داده می‌شود. این صفحه مرجع فنی است؛ برای آموزش قدم‌به‌قدم، راهنمای پلتفرم خودتان را در پایین همین صفحه باز کنید.

روند کار#

  1. دانشجو در سایت شما وارد حسابش می‌شود و صفحه‌ی درس را باز می‌کند.
  2. سرور شما با کلید API یک درخواست به embed-tokens می‌فرستد و مشخص می‌کند کدام دوره یا ویدیو و برای کدام دانشجو.
  3. پاسخ یک نشانی پلیر (url) است که توکن امضاشده داخلش است. آن را در یک iframe در صفحه می‌گذارید.
  4. پلیر فقط روی دامنه‌هایی نمایش داده می‌شود که در «سایت‌های مجاز» ثبت کرده‌اید، و نام یا شماره‌ی همین دانشجو روی تصویر حرکت می‌کند.

درخواست#

نشانیPOST https://xaplayer.ir/api/v1/embed-tokens
AuthorizationBearer xap_sk_… (کلید API از «تنظیمات»)
Content-Typeapplication/json

فیلدهای بدنه#

فیلدنوعتوضیح
courseIdstringشناسه‌ی دوره؛ پلیر کل دوره را با فهرست جلسه‌ها نشان می‌دهد. دقیقاً یکی از courseId یا videoId لازم است.
videoIdstringشناسه‌ی یک ویدیو؛ فقط همان جلسه، بدون فهرست.
viewer.idstring، الزامیشناسه‌ی دانشجو در سیستم شما (تا ۱۲۰ نویسه).
viewer.namestring، اختیارینام دانشجو (تا ۱۲۰ نویسه).
viewer.phonestring، اختیاریشماره‌ی دانشجو (تا ۲۰ نویسه). اگر باشد همین روی تصویر حرکت می‌کند، وگرنه نام، وگرنه شناسه.
ttlSecondsnumber، اختیاریاعتبار توکن به ثانیه، از ۶۰ تا ۸۶۴۰۰. پیش‌فرض ۱۴۴۰۰ (چهار ساعت).
curl -X POST https://xaplayer.ir/api/v1/embed-tokens \
  -H "Authorization: Bearer $XAPLAYER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"courseId":"COURSE_ID","viewer":{"id":"student-42","name":"Ali Ahmadi"}}'

پاسخ#

JSON
{
  "token": "eyJ...",
  "url": "https://xaplayer.ir/embed/c/COURSE_ID?t=eyJ...",
  "expiresIn": 14400
}

url را بدون تغییر در iframe بگذارید. هر بار که صفحه باز می‌شود یک توکن تازه بگیرید و نشانی را کش نکنید.

HTML
<iframe src="PLAYER_URL" allow="fullscreen"
        style="width:100%;aspect-ratio:16/9;border:0;border-radius:12px"></iframe>

خطاها#

وضعیتکدیعنی
۴۰۰bad_requestبدنه نامعتبر است؛ جزئیات در details.issues آمده.
۴۰۱unauthorizedکلید API نیست، اشتباه است یا کلید تازه‌ای ساخته شده.
۴۰۴not_foundدوره یا ویدیو پیدا نشد یا متعلق به حساب دیگری است.
۴۲۹rate_limitedدرخواست‌ها بیش از حد سریع‌اند؛ کمی بعد دوباره بفرستید.

آموزش هر پلتفرم#

XAPlayer را ۱۴ روز رایگان، با ۱۰ لایسنس هدیه امتحان کنید.

دوره‌ی خود را رایگان امتحان کنید