Құжаттама бөлімдері
Іздеу⌘KҚол қойылған сілтемелер
Кімнің көре алатынын сіздің серверіңіз шешеді және мерзімі шектеулі ағын сілтемесін береді. dodocast тек қолтаңбаны тексереді.
Тариф
Қол қойылған сілтемелер тікелей ағын сілтемелеріне арналған және Pro мен Business тарифтерінде қолжетімді.
Қол қою кілті
- Settings → Signing keys → Create key бөліміне өтіңіз.
- Құпияны сақтап қойыңыз: ол кілт жасалған кезде бір рет қана көрсетіледі. Оны дерекқор құпиясөзі сияқты сақтаңыз және ешқашан браузерге жібермеңіз — тек серверде қол қойыңыз.
- Кілттің
sk_…идентификаторы бар, ол токен тақырыбына жазылады.


Кері қайтарылған кілт бір минут ішінде жұмыс істеуін тоқтатады, онымен қол қойылған сілтемелер де солай.
Токен
HS256 арқылы қол қойылған стандартты JWT:
json
header: { "alg": "HS256", "typ": "JWT", "kid": "sk_your_key_id" }
payload: { "code": "abc123XYZ0", "iat": 1791676800, "exp": 1791678600 }code— бейненің, плейлистің, трансляцияның немесе арнаның коды. Біреуіне арналған токен басқасын ашпайды.iatжәнеexpміндетті; жарамдылық мерзімі ең көбі 24 сағат.- Тек өз контентіңізге қол қоюға болады.
- Қолтаңбада құпияны консоль қалай берсе, дәл солай жол ретінде пайдаланыңыз.
js
// Node.js, jsonwebtoken кітапханасы
import jwt from 'jsonwebtoken'
const token = jwt.sign({ code: 'abc123XYZ0' }, process.env.DODOCAST_SECRET, {
algorithm: 'HS256', keyid: 'sk_your_key_id', expiresIn: '30m',
})
const url = `https://stream.dodocast.com/s/${token}/hls/mp4/abc123XYZ0/master.m3u8`python
# Python, PyJWT кітапханасы
import time, jwt
now = int(time.time())
token = jwt.encode({"code": "abc123XYZ0", "iat": now, "exp": now + 1800},
SECRET, algorithm="HS256", headers={"kid": "sk_your_key_id"})
url = f"https://stream.dodocast.com/s/{token}/hls/mp4/abc123XYZ0/master.m3u8"Player SDK ішінде бұл дайын бар: @dodocast/player/server ішіндегі signToken(), signedStreamUrl(), signedPlaylistItemUrl().
Токен қайда жазылады
Токен сілтеме жолына жазылады. Ойнатқыш нұсқаларды, сегменттерді және шифрлау кілтін сол префикспен өзі сұрайды.
| Не | Жол |
|---|---|
| Бейне | /s/{jwt}/hls/mp4/{code}/master.m3u8 |
| Трансляция | /s/{jwt}/live/mp4/{code}/index.m3u8 |
| Арна | /s/{jwt}/ch/mp4/{code}/index.m3u8 |
| Курс сабағы (плейлист кодына арналған токен) | /public/pl/{code}/item/{itemCode}?t={jwt} |


Сілтеме 403 қайтарса
- сіз бөтен контентке қол қойдыңыз — кілт тек өз контентіңіз үшін жұмыс істейді;
expминусiat24 сағаттан артық;- токенде
purposeөрісі бар — ол болмауы керек; - кілт кері қайтарылған (немесе қайта жасалған —
kidтексеріңіз); - серверіңіздің сағаты 5 минуттан артық алда.
Жаңартылды: