مرجع API: قرار دادن پلیر امن در هر سایت
مرجع کامل نمایش پلیر امن XAPlayer در سایت خودتان: روند کار، درخواست embed-tokens، فیلدها، پاسخ، iframe و خطاها؛ با نمونهکد curl، Node.js و پایتون.
همهی راهنماها
شروع
شروع سریع: اولین دورهی قفلشده در ۱۰ دقیقهامنیت ویدیو: رمزگذاری، واترمارک و آنچه هیچ پلیری نمیتواندنصب روی سایت شما
قرار دادن پلیر امن در وردپرسفروش دورهی ویدیویی با ووکامرس: افزونهی XAPlayerپلیر امن XAPlayer در مودلپلیر امن XAPlayer در لاراولپلیر امن XAPlayer با Node.js و Expressپلیر امن XAPlayer در Next.jsپلیر امن XAPlayer با پایتون: جنگو و فلسکسایت HTML، سایتساز یا بدون سروربرای فروشندهها
بارگذاری ویدیو و قفلگذاری خودکارصدور لایسنس، محدودیت دستگاه و صدور گروهیجلوگیری از دانلود ویدیو با IDM: راهنمای کامل برای مدرسهاقفلگذاری ویدیو در وردپرس و ووکامرسبرای دانشجوها
راهنمای دانشجو: تماشای دوره با کد لایسنسپلتفرمها: اندروید، آیفون، ویندوز، مک و لینوکستماشای دوره در اندرویدتماشای دوره در آیفون و آیپدتماشای دوره در ویندوز، مک و لینوکسبرای برنامهنویسها
مرجع API: قرار دادن پلیر امن در هر سایتاگر دوره را در سایت خودتان میفروشید، دانشجو به کد لایسنس نیازی ندارد: سرور سایت شما برای دانشجوی واردشده یک توکن کوتاهمدت میگیرد و پلیر داخل صفحهی درس نمایش داده میشود. این صفحه مرجع فنی است؛ برای آموزش قدمبهقدم، راهنمای پلتفرم خودتان را در پایین همین صفحه باز کنید.
روند کار#
- دانشجو در سایت شما وارد حسابش میشود و صفحهی درس را باز میکند.
- سرور شما با کلید API یک درخواست به embed-tokens میفرستد و مشخص میکند کدام دوره یا ویدیو و برای کدام دانشجو.
- پاسخ یک نشانی پلیر (url) است که توکن امضاشده داخلش است. آن را در یک iframe در صفحه میگذارید.
- پلیر فقط روی دامنههایی نمایش داده میشود که در «سایتهای مجاز» ثبت کردهاید، و نام یا شمارهی همین دانشجو روی تصویر حرکت میکند.
درخواست#
| نشانی | POST https://xaplayer.ir/api/v1/embed-tokens |
| Authorization | Bearer xap_sk_… (کلید API از «تنظیمات») |
| Content-Type | application/json |
فیلدهای بدنه#
| فیلد | نوع | توضیح |
|---|---|---|
| courseId | string | شناسهی دوره؛ پلیر کل دوره را با فهرست جلسهها نشان میدهد. دقیقاً یکی از courseId یا videoId لازم است. |
| videoId | string | شناسهی یک ویدیو؛ فقط همان جلسه، بدون فهرست. |
| viewer.id | string، الزامی | شناسهی دانشجو در سیستم شما (تا ۱۲۰ نویسه). |
| viewer.name | string، اختیاری | نام دانشجو (تا ۱۲۰ نویسه). |
| viewer.phone | string، اختیاری | شمارهی دانشجو (تا ۲۰ نویسه). اگر باشد همین روی تصویر حرکت میکند، وگرنه نام، وگرنه شناسه. |
| ttlSeconds | number، اختیاری | اعتبار توکن به ثانیه، از ۶۰ تا ۸۶۴۰۰. پیشفرض ۱۴۴۰۰ (چهار ساعت). |
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"}}'
پاسخ#
{
"token": "eyJ...",
"url": "https://xaplayer.ir/embed/c/COURSE_ID?t=eyJ...",
"expiresIn": 14400
}
url را بدون تغییر در iframe بگذارید. هر بار که صفحه باز میشود یک توکن تازه بگیرید و نشانی را کش نکنید.
<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
- پلیر امن XAPlayer در مودل
- پلیر امن XAPlayer در لاراول
- پلیر امن XAPlayer با Node.js و Express
- پلیر امن XAPlayer در Next.js
- پلیر امن XAPlayer با پایتون: جنگو و فلسک
- سایت HTML، سایتساز یا بدون سرور
XAPlayer را ۱۴ روز رایگان، با ۱۰ لایسنس هدیه امتحان کنید.
دورهی خود را رایگان امتحان کنید