Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅

Π“Π΄Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠ»ΡŽΡ‡ ΠΏΠΎΡ‚ΠΎΠΊΠ° (Stream Key) Π½Π° Π’Π²ΠΈΡ‡Π΅ ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½

ΠšΠ»ΡŽΡ‡ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π’Π²ΠΈΡ‡ β€” для ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ извСстноС, Π° для ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ совсСм Π½ΠΎΠ²ΠΎΠ΅ понятиС. Если Π²Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈΡˆΠ»ΠΈ Π² ΠΈΠ³Ρ€Ρƒ, эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡƒΠ·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ этот инструмСнт, ΠΊΠ°ΠΊΡƒΡŽ Ρ†Π΅Π½Π½ΠΎΡΡ‚ΡŒ нСсСт, ΠΊΠ°ΠΊ примСняСтся ΠΈ Ρ‡Ρ‚ΠΎ ΠΎΡ‚ Π½Π΅Π³ΠΎ зависит.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠ»ΡŽΡ‡ ΠΏΠΎΡ‚ΠΎΠΊΠ° Twitch Β«Stream KeyΒ» ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½

Twitch Stream Key β€” это ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΠΏΠΎΡ‚ΠΎΠΊΠ° трансляции, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ΅Π½ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ всю ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ OBS. Π’Π°ΠΊΠΎΠ³ΠΎ значСния Π²Ρ‹ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ доступС, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ информация личная ΠΈ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Π° для распространСния. Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ паспорта ΠΈΠ»ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ для Π²Ρ…ΠΎΠ΄Π° Π² Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚. А Ссли Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΡŽΠ·Π΅Ρ€ ΡƒΠ·Π½Π°Π΅Ρ‚ ΠΊΠΎΠ΄, Π±Π΅Π· Ρ‚Ρ€ΡƒΠ΄Π° смоТСт Π·Π°ΠΉΡ‚ΠΈ Π½Π° Π²Π°ΡˆΡƒ страницу ΠΈ ΡΡ‚Ρ€ΠΈΠΌΠΈΡ‚ΡŒ свои ΠΈΠ³Ρ€Ρ‹ ΠΎΡ‚Ρ‚ΡƒΠ΄Π°. ΠšΠ»ΡŽΡ‡ трансляции Π½Π° Π’Π²ΠΈΡ‡Π΅ измСняСмый, поэтому Ссли Π΅Π³ΠΎ случайно ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΡƒΠ·Π½Π°Π» ΠΈΠ»ΠΈ подсмотрСл, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΡƒΠ»ΠΈΡ‚ΡŒ ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅

Π“Π΄Π΅ Π²Π·ΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π½Π° Π’Π²ΠΈΡ‡Π΅

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ стрим ΠΊΠ΅ΠΉ, ΠΏΡ€ΠΎΠΉΠ΄ΠΈΡ‚Π΅ нСсколько ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ²:

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ± ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Β«Π‘Ρ‚Ρ€ΠΈΠΌ КСй» Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π΄Π²ΡƒΡ…Ρ„Π°ΠΊΡ‚ΠΎΡ€Π½ΡƒΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ!

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅

ПослС ΠΏΠΎΠΊΠ°Π·Π° систСма отправляСт Π²Π°ΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ. Π­Ρ‚ΠΎ сообщСниС Π² ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ с английского языка ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°Π΅Ρ‚ вас ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Ρ€Π°Π·Π³Π»Π°ΡˆΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ нСльзя, ΠΈΠ½Π°Ρ‡Π΅ это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»Π΅Ρ‡ΡŒ ΠΏΠΎΡ‚Π΅Ρ€ΡŽ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° ΠΈΠ»ΠΈ Π±Π°Π½. ΠŸΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚Π΅ Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΡ€ΠΎΡ‡Π»ΠΈ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΈ согласны с Π½ΠΈΠΌ.

Stream Key для Youtube

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅

Для любой трансляции Π΅ΡΡ‚ΡŒ своя ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠ° с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π£Π·Π½Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚, ΠΊΡƒΠ΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒΡΡ эфир ΠΈΠ³Ρ€Ρ‹.

Stream Key Π½Π° VK

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅

ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅Π΄Π°Π²Π½ΠΎ Π‘ΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ Β«Π’ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π΅Β» ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ½Π»Π°ΠΉΠ½ видСотрансляций. Если Π³Π΅ΠΉΠΌΠ΅Ρ€ Ρ€Π΅ΡˆΠΈΠ» ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π²ΠΈΠ΄Π΅ΠΎ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ VKontakte, Ρ‚ΠΎ потрСбуСтся Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Как ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ Β«Stream KeyΒ»?

ДСйствиС Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ всСго нСсколько сСкунд. Π‘Π½ΠΎΠ²Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ:

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Π½Π°ΠΆΠΌΠ΅Ρ‚Π΅ Π½Π° Β«Π‘Π±Ρ€ΠΎΡΠΈΡ‚ΡŒΒ», ниТняя строчка обновится.

Please enable account for streaming to receive a Stream Key – Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ?

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π° Ρ‚Π²ΠΈΡ‡Π΅

Дословно этот мСссСдТ ΠΎΡ‚ систСмы ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Β«ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись для Π²ΠΈΠ΄Π΅ΠΎΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠ°Β». Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Error Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π»ΠΈΠ±ΠΎ Π½Π΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ, Π»ΠΈΠ±ΠΎ Π½Π΅ ΠΏΡ€ΠΎΡˆΠ»ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи. Для устранСния Π±Π°Π³Π° Π²Ρ‹ΠΉΠ΄ΠΈΡ‚Π΅ ΠΈΠ· Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°, ΠΈ ΡΠΎΠ²Π΅Ρ€ΡˆΠΈΡ‚Π΅ Π²Ρ…ΠΎΠ΄ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ. ΠŸΡ€ΠΈ нСобходимости, очиститС Ρ„Π°ΠΉΠ»Ρ‹ ΠšΡƒΠΊΠΈ с Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΈΠ»ΠΈ Π²Π΅Ρ€Π½ΠΈΡ‚Π΅ Ρ€ΡƒΡ‡Π½Ρ‹Π΅ настройки Π΄ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ….

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Authentication

Introduction

This guide describes how to use Twitch Authentication to enable your application to take actions on behalf of a Twitch account or access certain data about usersΠ²Π‚™ accounts. The preferred method of authentication is OAuth. We use parts of the OAuth 2.0 protocol.

In addition to OAuth, Twitch supports OIDC (OpenID Connect) for a more secure OAuth 2.0 flow. OIDC tokens are compatible with services built for OIDC compliance, such as Cognito by Amazon Web Services.

Code samples are available for Go and Node.js.

Warning: Treat your token like a password. For example, never use access tokens in any public URL, and never display tokens on any web page without requiring a click to de-obfuscate.

Validating requests

If you use Twitch authentication for login purposes only, access tokens should be validated on a recurring interval. Periodic validation of previously issued OAuth tokens ensures that users who authorized your application have not decided to disconnect the integration.

You must validate access tokens before making API requests which perform mutations on or access sensitive information of users, if it has been more than one hour since the last validation.

Twitch periodically conducts audits. If we discover an application that is not re-validating access tokens (that is, an application that validates only for login and not thereafter), we will reach out and work with developers to resolve the issue. If the issue is not resolved, we may take punitive action, such as revoking the developerΠ²Π‚™s API key or throttling the applicationΠ²Π‚™s performance.

Validation is important because of how OAuth access tokens work and the end userΠ²Π‚™s expectation of OAuth session control. For example, users who opt to disconnect your integration from their Twitch accounts can do so from their account settings on Twitch. When a user disconnects from an integration, all OAuth tokens between that user and that integration are invalidated. In this scenario, the expectation is that OAuth tokens are tied to sessions on third-party services; as such, any existing sessions between the disconnected user and those services also should be invalidated.

When validating each of your requests, submit a request to the validation endpoint ( https://id.twitch.tv/oauth2/validate ) with your OAuth token in the header. If you are authenticated, the response includes the status of your token. A successful response indicates that your access token is valid.

Here is a sample request:

And here is a sample response:

Registration

To make an application that uses the Twitch API, you first need to register your application on the Twitch developer site. When creating this app, enter your redirect URI, which is where your users are redirected after being authorized. You can provide several redirect URIs, for example, if you wish to use the same client for different environments.

Once you create a developer application, you are assigned a client ID. Some authentication flows also require a client secret, which you can generate on the same page as the client ID.

Because your client secret is confidential, we cannot show it to you once you leave the page, so make sure to record it somewhere safe. Also, generating a new client secret immediately invalidates the current one, which might make your API requests fail until your app is updated.

Warning: Client IDs should be unique for each application: do not re-use client IDs across multiple applications. Also, applications should request the appropriate scopes for the intended target APIs. Failure to adhere to these guidelines may result in the suspension of your applicationΠ²Π‚™s access to the Twitch API.

Types of tokens

Twitch supports several types of tokens:

Token TypeDescription
ID tokens (OIDC)A set of claims about the end user, for a given authorization. Using OIDC ID tokens (JWT) enables you to get details about your user (such as email address) for a particular authorization. These details are represented by claims in the ID tokenΠ²Π‚™s payload.

Our discovery endpoint is at https://id.twitch.tv/oauth2/.well-known/openid-configuration. It can be used with standard OIDC clients like AWS Cognito.

User access tokensAuthenticate users and allow your app to make requests on their behalf. If your application uses Twitch for login or makes requests in the context of an authenticated user, you need to generate a user access token.
App access tokensAuthenticate your app and allow it to access resources that it owns. Since app access tokens are not associated with a user, they cannot be used with endpoints that require user authentication.

Some Twitch API endpoints require application authentication (not user authentication). If your application uses these endpoints, you need to generate an app access token. App access tokens get client credentials (not user credentials). They enable you to make secure API requests that are not on behalf of a specific user. Client credentials also may be used in place of client ID headers to securely identify your application.

App access tokens expire after about 60 days, so you should check that your app access token is valid by submitting a request to the validation endpoint (see Validating Requests). If your token has expired, generate a new one.

App access tokens are meant only for server-to-server API requests and should never be included in client code.

User access tokens and app access tokens are both bearer tokens. Π²Π‚ΡšBearerΠ²Π‚Ρœ comes from the authorization header; see Sending User Access and App Access Tokens.

Getting tokens

The domain dedicated to Twitch authentication is https://id.twitch.tv.

Note: URLs have been updated to replace https://api.twitch.tv/kraken with https://id.twitch.tv. Code that uses the old kraken domain for Twitch authentication will continue to work until the removal of Twitch API v. 5 functionality. Twitch API v. 5 is currently deprecated.

We support several authentication flows:

Flow TypeDescription
Implicit code flowYour app does not use a server, such as a client-side JavaScript app or mobile app. This approach does not require a server that must make requests to the API.
Authorization code flowYour application uses a server, can securely store a client secret, and can make server-to-server requests.
Client credentials flowYou need an app access token.

The procedure you should use to get tokens depends on the type(s) of tokens you want:

ProcedureUser Access TokenID TokenApp Access Token
OIDC Implicit Code FlowΠ²Ρšβ€Π²Ρšβ€Π’
OAuth Implicit Code FlowΠ²Ρšβ€Π’Π’
OIDC Authorization Code FlowΠ²Ρšβ€Π²Ρšβ€Π’
OAuth Authorization Code FlowΠ²Ρšβ€Π’Π’
OAuth Client Credentials FlowΠ’Π’Π²Ρšβ€

Sending user access and app access tokens

When an API request requires authentication, send the access token as a header. The header differs, depending on which API you use:

Revoking access tokens

To clean up previously obtained access tokens, use the Twitch OAuth token-revocation endpoint. The implementation follows the OAuth standard.

The following example shows how to revoke a user or app access token:

Successful requests return 200 OK with no body.

Refreshing access tokens

New OAuth2 access tokens have expirations. Token-expiration periods vary in length, based on how the token was acquired. Tokens return an expires_in field indicating how long the token should last. However, you should build your applications in such a way that they are resilient to token authentication failures. In other words, an application capable of refreshing tokens should not need to know how long a token will live. Rather, it should be prepared to deal with the token becoming invalid at any time.

To allow for applications to remain authenticated for long periods in a world of expiring tokens, we allow for sessions to be refreshed, in accordance with the guidelines in Π²Π‚ΡšRefreshing an Access TokenΠ²Π‚Ρœ in the OAuth2 RFC. Generally, refresh tokens are used to extend the lifetime of a given authorization.

Note: App access tokens and ID tokens cannot be refreshed.

How to refresh

To refresh a token, you need an access token/refresh token pair coming from a body. For example:

You also need the client_id and client_secret used to generate the above access token/refresh token pair

To refresh, use this request:

There are several required parameters and one optional parameter:

Your refresh token may contain characters that are not URL safe, so be sure to URL encode the characters of your refresh token before inserting it into the body of the refresh request. Otherwise, you may get an error (Π²Π‚ΡšInvalid refresh tokenΠ²Π‚Ρœ) when you try to refresh.

Optional ParameterTypeDescription
scopestringSpace-separated list of scopes. This must be the entire set or any subset of the scopes assigned to the original token grant. It cannot include any scope not originally granted by the resource owner. Default: the entire set of scopes originally granted.

Here is a sample response on success. It contains the new access token, refresh token, and scopes associated with the new grant. Your application should then update its record of the refresh token to be the value provided in this response, as the refresh token may change between requests.

Here is the body of an unsuccessful response:

Refresh in response to server rejection for bad authentication

We recommend that you refresh your tokens in response to being rejected by the server for bad authentication. It is good practice to assume that your access token can expire or be revoked at any time, and refreshing reactively ensures that your application is prepared to deal with such situations as gracefully as possible. For this reason, refreshing in response to server rejection is preferable to refreshing proactively, on a fixed schedule.

When you make a request with expired or incorrect authorization credentials, the API returns a 401 Unauthorized status:

On seeing a 401 error, an application should try to refresh the session if a refresh token is present. If the refresh fails, the application should re-prompt the end user with another authentication dialog via the standard OAuth 2 flow.

Handling token refreshes in an application

We recommend that you do access-token refreshes synchronously with respect to all consumers of a given access token. That is, do not send multiple, simultaneous refresh requests for the same token. Send one refresh request, then redistribute the new token that is returned from that request to all consumers, as appropriate.

The API limits the number of active access tokens associated with a given refresh token. The limit is 50 token per client/user (that is, a user can only have 50 tokens live at a time per client ID). If multiple threads sharing the same authorization were to simultaneously refresh, some of them might not have working credentials at the end of the refresh. Synchronizing on the refresh operation prevents the application from inadvertently overrunning its limit.

Scopes

As mentioned above, when you request authorization from users, the URL scope parameter allows you to specify which permissions your app requires. These scopes are tied to the access token you receive on successful authorization. Multiple scopes can be specified when requesting an OAuth or OIDC token. Without specifying scopes, your app can access only basic information about the authenticated user.

Scopes are specified as a space-separated list in the URL scope parameter, when requesting authorization:

Ask only for the permissions you need, as users can view each requested permission when authorizing your app.

No scopes are needed when requesting app access tokens.

Twitch API

The table below is a comprehensive list of the available scopes for the Twitch API. To see a comprehensive list of all Twitch API endpoints, including those that do not require scopes, refer to the Twitch API reference.

Scope NameType of Access and Associated Endpoints
analytics:read:extensionsView analytics data for the Twitch Extensions owned by the authenticated account.

Get Extension Analytics

analytics:read:gamesView analytics data for the games owned by the authenticated account.

Get Game Analytics

bits:readView Bits information for a channel.

Get Bits Leaderboard

channel:edit:commercialRun commercials on a channel.

Start Commercial

channel:manage:broadcastManage a channelΠ²Π‚™s broadcast configuration, including updating channel configuration and managing stream markers and stream tags.

Modify Channel Information
Create Stream Marker
Replace Stream Tags

channel:manage:extensionsManage a channelΠ²Π‚™s Extension configuration, including activating Extensions.

Get User Active Extensions
Update User Extensions

channel:manage:pollsManage a channelΠ²Π‚™s polls.

Create Poll
End Poll

channel:manage:predictionsManage of channelΠ²Π‚™s Channel Points Predictions

Create Channel Points Prediction
End Channel Points Prediction

channel:manage:redemptionsManage Channel Points custom rewards and their redemptions on a channel.

Create Custom Rewards
Delete Custom Reward
Update Custom Reward
Update Redemption Status

channel:manage:scheduleManage a channelΠ²Π‚™s stream schedule.

Update Channel Stream Schedule
Create Channel Stream Schedule Segment
Update Channel Stream Schedule Segment
Delete Channel Stream Schedule Segment

channel:manage:videosManage a channelΠ²Π‚™s videos, including deleting videos.

Delete Videos

channel:read:editorsView a list of users with the editor role for a channel.

Get Channel Editors

channel:read:goalsView Creator Goals for a channel.

Get Creator Goals

channel:read:hype_trainView Hype Train information for a channel.

Get Hype Train Events

channel:read:pollsView a channelΠ²Π‚™s polls.

Get Polls

channel:read:predictionsView a channelΠ²Π‚™s Channel Points Predictions.

Get Channel Points Predictions

channel:read:redemptionsView Channel Points custom rewards and their redemptions on a channel.

Get Custom Reward
Get Custom Reward Redemption

channel:read:stream_keyView an authorized userΠ²Π‚™s stream key.

Get Stream Key

channel:read:subscriptionsView a list of all subscribers to a channel and check if a user is subscribed to a channel.

Get Broadcaster Subscriptions

clips:editManage Clips for a channel.

Create Clip

moderation:readView a channelΠ²Π‚™s moderation data including Moderators, Bans, Timeouts, and Automod settings.

Check AutoMod Status
Get Banned Events
Get Banned Users
Get Moderators
Get Moderator Events

moderator:manage:banned_usersBan and unban users.

Ban users
Unban user

moderator:read:blocked_termsView a broadcasterΠ²Π‚™s list of blocked terms.

Get Blocked Terms

moderator:manage:blocked_termsManage a broadcasterΠ²Π‚™s list of blocked terms.

Add Blocked Term
Remove Blocked Term

moderator:manage:automodManage messages held for review by AutoMod in channels where you are a moderator.

Manage Held AutoMod Messages

moderator:read:automod_settingsView a broadcasterΠ²Π‚™s AutoMod settings.

Get AutoMod Settings

moderator:manage:automod_settingsManage a broadcasterΠ²Π‚™s AutoMod settings.

Update AutoMod Settings

moderator:read:chat_settingsView a broadcasterΠ²Π‚™s chat room settings.

Get Chat Settings

moderator:manage:chat_settingsManage a broadcasterΠ²Π‚™s chat room settings.

Update Chat Settings

user:editManage a user object.

Update User

user:edit:followsDeprecated. Was previously used for Π²Π‚ΡšCreate User FollowsΠ²Π‚Ρœ and Π²Π‚ΡšDelete User Follows.Π²Π‚Ρœ See Deprecation of Create and Delete Follows API Endpoints.
user:manage:blocked_usersManage the block list of a user.

Block User
Unblock User

user:read:blocked_usersView the block list of a user.

Get User Block List

user:read:broadcastView a userΠ²Π‚™s broadcasting configuration, including Extension configurations.

Get Stream Markers
Get User Extensions
Get User Active Extensions

user:read:emailView a userΠ²Π‚™s email address.

Get Users (optional)

user:read:followsView the list of channels a user follows.
Get Followed Streams
user:read:subscriptionsView if an authorized user is subscribed to specific channels.

Legacy Twitch API v5

With the deprecation of Twitch API v5, the scopes below have been mapped to Twitch API scopes for an easier migration between versions. You can find this mapping and information about equivalent endpoints on the Twitch API Migration Guide.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ АутСнтификация

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π­Ρ‚ΠΎ руководство ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Twitch Authentication, Ρ‡Ρ‚ΠΎ позволяСт Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ дСйствия ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Twitch ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΎΠ± ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. БущСствуСт нСсколько способов ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Twitch ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ части ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° OAuth 2.0.

Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ OAuth Twitch ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ OIDC (OpenID Connect) для Π±ΠΎΠ»Π΅Π΅ бСзопасного ΠΏΠΎΡ‚ΠΎΠΊΠ° OAuth 2.0. Π’ΠΎΠ½Π΅Ρ€Ρ‹ OIDC совмСстимы с услугами, созданными для соотвСтствия трСбованиям OIDC, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Cognito ΠΎΡ‚ Amazon Web Services.

АутСнтификация Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚:

Когда ΠΌΡ‹ описываСм этапы, ΠΌΡ‹ прСдоставляСм ΠΎΠ±Ρ€Π°Π·Ρ†Ρ‹ запросов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄Π΅Ρ‚ создано вашим ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ваши ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ прСдоставили Π²Π°ΠΌ доступ ΠΊ ΠΈΡ… активности просмотра.

Для удобства чтСния Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… строках; Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ находятся Π½Π° ΠΎΠ΄Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ.

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ свой Ρ‚ΠΎΠΊΠ΅Π½ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. НапримСр, Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ доступа Π² любом общСдоступном URL-адрСсС ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Ρ‹ Π½Π° любой Π²Π΅Π±-страницС, Π½Π΅ трСбуя Ρ‰Π΅Π»Ρ‡ΠΊΠ°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΎΠ±Ρ„ΡƒΡΠΊΠ°Ρ†ΠΈΡŽ. Π”Π΅Ρ€ΠΆΠΈΡ‚Π΅ ΠΆΠ΅Ρ‚ΠΎΠ½Ρ‹ Π² сСкрСтС!

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° запросов

ΠœΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ доступа ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°Ρ‚ΡŒ запросы API, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΠΌΡƒΡ‚Π°Ρ†ΠΈΠΈ, ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ доступ ΠΊ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ссли ΠΏΡ€ΠΎΡˆΠ»ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ часа с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° послСднСй ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ.

Twitch пСриодичСски ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ Π°ΡƒΠ΄ΠΈΡ‚. Если ΠΌΡ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ повторяСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² доступа (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ провСряСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π²Ρ…ΠΎΠ΄Π° Π² систСму, Π° Π½Π΅ послС этого), ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΈΠΌΠΈ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Если ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π½Π΅ устранСна, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΠΊΠ°Ρ€Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ дСйствия, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π° API Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈΠ»ΠΈ дроссСлированиС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ прилоТСния.

Валидация Π²Π°ΠΆΠ½Π° ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ доступа OAuth ΠΈ оТидания ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ для контроля сСанса OAuth. НапримСр, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π²Π°ΡˆΡƒ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ со своими ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ записями Twitch, ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это ΠΈΠ· своих настроСк ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Π² Twitch. Когда ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΎΡ‚ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ, всС Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ OAuth ΠΌΠ΅ΠΆΠ΄Ρƒ этим ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈ эта интСграция Π°Π½Π½ΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ. Π’ этом случаС оТидаСтся, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ OAuth привязаны ΠΊ сСансам сторонних слуТб; ΠΊΠ°ΠΊ Ρ‚Π°ΠΊΠΎΠ²Ρ‹Π΅, Π»ΡŽΠ±Ρ‹Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ сСансы ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈ этими слуТбами Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹.

ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π²Π°ΡˆΠΈΡ… запросов ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ запрос ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ (https://id.twitch.tv/oauth2/validate) с вашим Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ OAuth Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅. Если Π²Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, ΠΎΡ‚Π²Π΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ статус вашСго Ρ‚ΠΎΠΊΠ΅Π½Π°. Π£ΡΠΏΠ΅ΡˆΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ваш Ρ‚ΠΎΠΊΠ΅Π½ доступа дСйствитСлСн.

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ запроса:

И Π²ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚Π²Π΅Ρ‚Π°:

РСгистрация

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π΅ API Twitch, сначала Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ своС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° сайтС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Twitch. ΠŸΡ€ΠΈ создании этого прилоТСния Π²Π²Π΅Π΄ΠΈΡ‚Π΅ свой URI пСрСнаправлСния, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ послС Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ.

ПослС создания прилоТСния-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π²Π°ΠΌ присваиваСтся ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. НСкоторыС ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ сСкрСтности ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π° Ρ‚ΠΎΠΉ ΠΆΠ΅ страницС, Ρ‡Ρ‚ΠΎ ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ сСкрСт вашСго ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° являСтся ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ, ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π²Π°ΠΌ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΏΠΎΠΊΠΈΠ½Π΅Ρ‚Π΅ страницу, поэтому ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ записывайтС Π΅Π΅ Π³Π΄Π΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π² бСзопасности. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, гСнСрация Π½ΠΎΠ²ΠΎΠ³ΠΎ сСкрСтного ΠΊΠ»ΡŽΡ‡Π° Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ сбою Π²Π°ΡˆΠΈΡ… запросов API Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ.

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ прилоТСния: Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… прилоТСниях. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, прилоТСния Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ областСй для Ρ†Π΅Π»Π΅Π²Ρ‹Ρ… API-интСрфСйсов. НСсоблюдСниС этих Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ приостановкС доступа вашСго прилоТСния ΠΊ API Twitch.

Π’ΠΈΠΏΡ‹ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ²

Twitch ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ нСсколько Ρ‚ΠΈΠΏΠΎΠ² Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ²:

Набор Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ для Π΄Π°Π½Π½ΠΎΠΉ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ. ИспользованиС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° OIDC (JWT) позволяСт Π²Π°ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ вашСм ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, адрСс элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹) для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ прСдставлСны заявками Π² ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°.

Наша конСчная Ρ‚ΠΎΡ‡ΠΊΠ° обнаруТСния находится ΠΏΠΎ адрСсу https://id.twitch.tv/oauth2/.well-known/openid-configuration. Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ со стандартными ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ OIDC, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ AWS Cognito.

АутСнтифицируйтС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Π΄Π΅Π»Π°Ρ‚ΡŒ запросы ΠΎΡ‚ ΠΈΡ… ΠΈΠΌΠ΅Π½ΠΈ. Если вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Twitch для Π²Ρ…ΠΎΠ΄Π° Π² систСму ΠΈΠ»ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚ запросы Π² контСкстС Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½ доступа ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

АутСнтифицируйтС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅ Π΅ΠΌΡƒ доступ ΠΊ рСсурсам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΎΠ½ Π²Π»Π°Π΄Π΅Π΅Ρ‚. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ доступа ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π΅ связаны с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, ΠΎΠ½ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ с ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΌΠΈ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

НСкоторыС ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ Twitch API Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ подлинности прилоТСния (Π½Π΅ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ). Если вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ эти ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½ доступа ΠΊ прилоТСниям. Π’ΠΎΡ‡ΠΊΠΈ доступа ΠΊ доступу ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° (Π° Π½Π΅ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ). Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ бСзопасныС запросы API, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π£Ρ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ вмСсто Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ вашСго прилоТСния.

Π’ΠΎΡ‡ΠΊΠΈ доступа ΠΊ прилоТСниям ΠΈΡΡ‚Π΅ΠΊΠ°ΡŽΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· 60 Π΄Π½Π΅ΠΉ, поэтому Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΊΠ΅Π½ доступа ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ дСйствитСлСн, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ² запрос Π½Π° ΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ (см. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° запросов). Если ваш Ρ‚ΠΎΠΊΠ΅Π½ истСк, создайтС Π½ΠΎΠ²Ρ‹ΠΉ.

Π’ΠΎΡ‡ΠΊΠΈ доступа ΠΊ прилоТСниям ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для запросов API-интСрфСйсов сСрвСр-сСрвСр ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π² ΠΊΠΎΠ΄ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ²

ΠœΡ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌ нСсколько ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ:

Π’ΠΈΠΏ Ρ‚ΠΎΠΊΠ΅Π½Π°ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
ID Ρ‚ΠΎΠΊΠ΅Π½ (OIDC)
Π’ΠΈΠΏ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
НСявный ΠΏΠΎΡ‚ΠΎΠΊ ΠΊΠΎΠ΄Π°Π’ вашСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ сСрвСр, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ JavaScript ΠΈΠ»ΠΈ мобильноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ сСрвСра, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΄Π΅Π»Π°Ρ‚ΡŒ запросы ΠΊ API.
ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈΠ’Π°ΡˆΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ сСрвСр, ΠΌΠΎΠΆΠ΅Ρ‚ бСзопасно Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ сСкрСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ запросы сСрвСра ΠΊ сСрвСру.
ΠŸΠΎΡ‚ΠΎΠΊ клиСнтских ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…Π’Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Ρ‚ΠΎΠΊΠ΅Π½ доступа ΠΊ прилоТСниям.

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для получСния Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ², зависит ΠΎΡ‚ Ρ‚ΠΈΠΏΠΎΠ²) Ρ‚ΠΎΠ½ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°Π’ΠΎΠΊΠ΅Π½ доступа ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡID Ρ‚ΠΎΠΊΠ΅Π½Π’ΠΎΠΊΠ΅Π½ доступа ΠΊ прилоТСниям
НСявный ΠΏΠΎΡ‚ΠΎΠΊ ΠΊΠΎΠ΄Π° OIDC
НСявный ΠΏΠΎΡ‚ΠΎΠΊ ΠΊΠΎΠ΄Π° OAuth
ΠŸΠΎΡ‚ΠΎΠΊ ΠΊΠΎΠ΄Π° Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ OIDC
ΠŸΠΎΡ‚ΠΎΠΊ ΠΊΠΎΠ΄Π° Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ OAuth
ΠŸΠΎΡ‚ΠΎΠΊ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° OAuth

ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° доступа ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² доступа ΠΊ прилоТСниям

Когда запрос API Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ Ρ‚ΠΎΠΊΠ΅Π½ доступа Π² Π²ΠΈΠ΄Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°. Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ отличаСтся, Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΎΠΉ API Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅:

Π’ Π½ΠΎΠ²ΠΎΠΌ Twitch API:

ΠžΡ‚ΠΌΠ΅Π½Π° Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² доступа

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ доступа, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ тормоТСния Ρ‚ΠΎΠΊΠ΅Π½Π° Twitch OAuth. Π•Π³ΠΎ рСализация соотвСтствуСт стандарту OAuth.

На своСм сСрвСрС ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ‚ΠΎΠΊΠ΅Π½ доступа, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² этот запрос:

НапримСр, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ вашСго Ρ€Π°Π½Π΅Π΅ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, запрос:

Π­Ρ‚ΠΎΡ‚ запрос Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ для Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² доступа ΠΊ прилоТСниям. Π§Ρ‚ΠΎΠ±Ρ‹ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½ доступа ΠΊ прилоТСниям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ создали Ρ€Π°Π½Π΅Π΅, сдСлайтС этот запрос:

Как ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹Π΅ запросы, Ρ‚Π°ΠΊ ΠΈ запросы с ΠΏΠ»ΠΎΡ…ΠΈΠΌΠΈ Ρ‚ΠΎΠΊΠ΅Π½Π°ΠΌΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ 200 OK Π±Π΅Π· Ρ‚Π΅Π»Π°. Запросы с ΠΏΠ»ΠΎΡ…ΠΈΠΌΠΈ Ρ‚ΠΎΠΊΠ΅Π½Π°ΠΌΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΡ‚Π²Π΅Ρ‚, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΠΌΠΎΠ³ΠΎ дСйствия, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Π°.

ОбновлСниС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² доступа

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ прилоТСниям ΠΎΡΡ‚Π°Π²Π°Ρ‚ΡŒΡΡ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΌΠΈΡ€Π΅ ΠΈΡΡ‚Π΅ΠΊΠ°ΡŽΡ‰ΠΈΡ… Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ², ΠΌΡ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅ΠΌ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ сСансы Π² соотвСтствии с рСкомСндациями Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «ОбновлСниС Ρ‚ΠΎΠΊΠ΅Π½Π° доступа» Π² RFC OAuth2. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для продлСния срока слуТбы Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π’Ρ‹Ρ…ΠΎΠ΄Ρ‹ Ρ‚ΠΎΠΊΠ΅Π½Π° Π½Π΅ Π²Π»ΠΈΡΡŽΡ‚ Π½Π° ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹. Π’ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΡ‚Π·Ρ‹Π²Π°Ρ‚ΡŒ постоянно ΠΆΠΈΠ²ΡƒΡ‰ΠΈΠ΅ сСссии.

(ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ доступа ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ доступа Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹.)

How to Refresh

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½, Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π° ΠΏΠ°Ρ€Π° Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² доступа / обновлСния, исходящая ΠΈΠ· Ρ‚Π΅Π»Π°. НапримСр:

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ этот запрос:

БущСствуСт нСсколько Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ ΠΎΠ΄ΠΈΠ½ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€:

Π”Π°Π½Π½Ρ‹ΠΉ сайт Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ΡŒΡΡ для ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ искользовани Twitch Developer Π² России.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *