YouTube Live Streaming API ব্যক্তিগত ব্যবহারকারীর ডেটা অ্যাক্সেস অনুমোদনের জন্য OAuth 2.0 প্রোটোকল সমর্থন করে। নীচের তালিকাটি কিছু মূল OAuth 2.0 ধারণা ব্যাখ্যা করে:
যখন একজন ব্যবহারকারী প্রথমে আপনার অ্যাপ্লিকেশনে কার্যকারিতা ব্যবহার করার চেষ্টা করে যার জন্য ব্যবহারকারীকে একটি Google Account or YouTube account লগ ইন করতে হবে, তখন আপনার অ্যাপ্লিকেশনটি OAuth 2.0 অনুমোদন প্রক্রিয়া শুরু করে৷
আপনার অ্যাপ্লিকেশন ব্যবহারকারীকে Google এর অনুমোদন সার্ভারে নির্দেশ করে৷ সেই পৃষ্ঠার লিঙ্কটি অ্যাক্সেসের
scope
নির্দিষ্ট করে যা আপনার অ্যাপ্লিকেশন ব্যবহারকারীর অ্যাকাউন্টের জন্য অনুরোধ করছে।scope
সেই সংস্থানগুলি নির্দিষ্ট করে যা আপনার অ্যাপ্লিকেশন প্রমাণীকৃত ব্যবহারকারী হিসাবে কাজ করার সময় পুনরুদ্ধার, সন্নিবেশ, আপডেট বা মুছে ফেলতে পারে।ব্যবহারকারী যদি সেই সংস্থানগুলি অ্যাক্সেস করার জন্য আপনার অ্যাপ্লিকেশনটিকে অনুমোদন করতে সম্মতি দেয়, Google আপনার অ্যাপ্লিকেশনে একটি টোকেন ফেরত দেয়। আপনার অ্যাপ্লিকেশানের প্রকারের উপর নির্ভর করে, এটি হয় টোকেনটিকে বৈধ করে বা এটিকে একটি ভিন্ন ধরণের টোকেনের জন্য বিনিময় করে৷
উদাহরণস্বরূপ, একটি সার্ভার-সাইড ওয়েব অ্যাপ্লিকেশন একটি অ্যাক্সেস টোকেন এবং একটি রিফ্রেশ টোকেনের জন্য ফেরত টোকেন বিনিময় করে। অ্যাক্সেস টোকেন অ্যাপ্লিকেশনটিকে ব্যবহারকারীর পক্ষ থেকে অনুরোধগুলি অনুমোদন করতে দেয় এবং রিফ্রেশ টোকেনটি অ্যাপ্লিকেশনটিকে একটি নতুন অ্যাক্সেস টোকেন পুনরুদ্ধার করতে দেয় যখন আসল অ্যাক্সেস টোকেনের মেয়াদ শেষ হয়ে যায়।
গুরুত্বপূর্ণ: OAuth 2.0 অনুমোদন ব্যবহার করতে, আপনাকে Google API কনসোলে অনুমোদনের শংসাপত্রগুলি পেতে হবে।
দ্রষ্টব্য: একটি চ্যানেলকে YouTube লাইভ বৈশিষ্ট্য ব্যবহার করার জন্য অনুমোদিত হতে হবে, যা চ্যানেল মালিককে সেই চ্যানেলে লাইভ সামগ্রী স্ট্রিম করতে সক্ষম করে। আপনি যদি এমন একজন প্রমাণীকৃত ব্যবহারকারীর পক্ষ থেকে API অনুরোধ পাঠান যার চ্যানেল সক্রিয় নয় বা লাইভ সামগ্রী স্ট্রিম করার যোগ্য নয়, তাহলে API একটি insufficientPermissions
ত্রুটি ফিরিয়ে দেবে।
OAuth 2.0 প্রবাহ
Google APIগুলি বেশ কয়েকটি OAuth 2.0 ব্যবহারের ক্ষেত্রে সমর্থন করে:
- সার্ভার-সাইড ওয়েব অ্যাপ্লিকেশান ফ্লো ওয়েব অ্যাপ্লিকেশনগুলিকে সমর্থন করে যা নিরাপদে স্থায়ী তথ্য সংরক্ষণ করতে পারে৷
- JavaScript ওয়েব অ্যাপস ফ্লো একটি ব্রাউজারে চলমান জাভাস্ক্রিপ্ট অ্যাপ্লিকেশন সমর্থন করে।
- মোবাইল এবং ডেস্কটপ অ্যাপ্লিকেশানগুলি একটি ডিভাইসে ইনস্টল করা অ্যাপ্লিকেশনগুলিকে সমর্থন করে, যেমন একটি ফোন বা কম্পিউটার৷
- টিভি এবং সীমিত-ইনপুট ডিভাইস ফ্লো সীমিত ইনপুট ক্ষমতা সহ ডিভাইসগুলিকে সমর্থন করে, যেমন গেম কনসোল এবং ভিডিও ক্যামেরা।
- পরিষেবা অ্যাকাউন্ট প্রবাহের জন্য OAuth 2.0 ফ্লো সার্ভার-টু-সার্ভার ইন্টারঅ্যাকশন সমর্থন করে যা ব্যবহারকারীর তথ্য অ্যাক্সেস করে না। যাইহোক, YouTube Live Streaming API এই প্রবাহ সমর্থন করে না। Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate a
NoLinkedYouTubeAccount
error.