এই নথিটি ব্যাখ্যা করে কিভাবে ব্লগার API ব্যবহার করে শুরু করতে হয়।
শুরু করার আগে
একটি Google অ্যাকাউন্ট পান
আপনার একটি Google অ্যাকাউন্ট সেট আপ আছে তা নিশ্চিত করুন৷ দুর্ঘটনাজনিত ডেটা ক্ষতি থেকে নিজেকে রক্ষা করার জন্য আমরা আপনাকে ডেভেলপমেন্ট এবং পরীক্ষার উদ্দেশ্যে একটি পৃথক Google অ্যাকাউন্ট ব্যবহার করার পরামর্শ দিই। আপনার যদি ইতিমধ্যেই একটি পরীক্ষামূলক অ্যাকাউন্ট থাকে, তাহলে আপনি সম্পূর্ণ প্রস্তুত; আপনি আপনার পরীক্ষার ডেটা সেট আপ করতে, সম্পাদনা করতে বা দেখতে ব্লগার ইউজার ইন্টারফেসে যেতে পারেন।
ব্লগারের সাথে পরিচিত হন
আপনি যদি ব্লগার ধারণার সাথে অপরিচিত হন তবে এই নথিটি পড়ুন এবং কোড শুরু করার আগে ব্যবহারকারী ইন্টারফেসের সাথে পরীক্ষা করুন। এই নথিটি অনুমান করে যে আপনি ব্লগার, ওয়েব প্রোগ্রামিং ধারণা এবং ওয়েব ডেটা ফর্ম্যাটের সাথে পরিচিত৷
অনুরোধ অনুমোদন এবং আপনার আবেদন সনাক্ত সম্পর্কে জানুন
যখন আপনার অ্যাপ্লিকেশান ব্যক্তিগত ডেটার অনুরোধ করে, অনুরোধটি অবশ্যই একজন প্রমাণীকৃত ব্যবহারকারীর দ্বারা অনুমোদিত হতে হবে যার সেই ডেটাতে অ্যাক্সেস রয়েছে৷
যখন আপনার অ্যাপ্লিকেশান সর্বজনীন ডেটার অনুরোধ করে, তখন অনুরোধটির অনুমোদনের প্রয়োজন হয় না, তবে একটি API কী এর মতো একটি শনাক্তকারীর সাথে থাকা প্রয়োজন৷
কিভাবে অনুরোধ অনুমোদন করতে হয় এবং এপিআই কী ব্যবহার করতে হয় সে সম্পর্কে তথ্যের জন্য, এপিআই ডকুমেন্ট ব্যবহার করে অনুরোধ অনুমোদন এবং আপনার অ্যাপ্লিকেশন সনাক্তকরণ দেখুন।
ব্লগার API ব্যাকগ্রাউন্ড
ব্লগার ধারণা
ব্লগার পাঁচটি মৌলিক ধারণার উপর নির্মিত:
- ব্লগ : API এর মূল ধারণা। একটি ব্লগ পোস্ট এবং পৃষ্ঠা আছে. এটি ব্লগ মেটা-তথ্যের জন্য ধারক যেমন ব্লগের নাম এবং বিবরণ।
- পোস্ট : একটি ব্লগ পোস্ট হল প্রকাশযোগ্য আইটেম যা ব্লগ লেখক তৈরি করেছেন। এই তথ্যটি সময়োপযোগী হতে বোঝানো হয়েছে, লেখকরা এখন বিশ্বের কাছে কী প্রকাশ করতে চান তা প্রতিফলিত করে। এটা বোঝা যায় যে সময়ের সাথে সাথে ব্লগ পোস্টের বিষয়বস্তু বয়স বাড়ায় এবং কম প্রাসঙ্গিক হয়ে ওঠে।
- মন্তব্য : একটি মন্তব্য হল সেই জায়গা যেখানে ব্লগ পোস্ট লেখক ছাড়া অন্য লোকেরা লেখক যা লিখেছেন তাতে প্রতিক্রিয়া দেখায়। ইট থেকে তোড়া সবই।
- পৃষ্ঠা : একটি পৃষ্ঠা হল স্থির বিষয়বস্তুর জন্য একটি স্থান, যেমন জীবনী সংক্রান্ত তথ্য, বা ব্যবহারকারীর সাথে যোগাযোগ করার উপায়। এটি সাধারণত নিরবধি তথ্য যা প্রায়শই পরিবর্তিত হয় না।
- ব্যবহারকারী : একজন ব্যবহারকারী হলেন এমন একজন যিনি ব্লগারের সাথে যোগাযোগ করেন, তারা একজন লেখক, একজন প্রশাসক বা শুধুমাত্র একজন পাঠক হিসেবে কাজ করছেন। সর্বজনীন ব্লগের জন্য, পাঠক বেনামী হতে পারে, কিন্তু ব্যক্তিগত ব্লগে একজন পাঠককে অবশ্যই ব্লগার দ্বারা চিহ্নিত করতে হবে।
ব্লগার API ডেটা মডেল
একটি সম্পদ একটি অনন্য শনাক্তকারী সহ একটি পৃথক ডেটা সত্তা। ব্লগার JSON API পাঁচ ধরনের সম্পদে কাজ করে:
- ব্লগ সম্পদ : একটি ব্লগ প্রতিনিধিত্ব করে।
- পোস্ট সম্পদ : একটি পোস্ট প্রতিনিধিত্ব করে; প্রতিটি পোস্ট সম্পদ একটি ব্লগ সম্পদ একটি সন্তান.
- মন্তব্য সম্পদ : একটি নির্দিষ্ট পোস্টে একটি মন্তব্য প্রতিনিধিত্ব করে; প্রতিটি মন্তব্য সম্পদ একটি পোস্ট সম্পদ একটি সন্তান.
- পেজ রিসোর্স : একটি স্ট্যাটিক পেজ রিপ্রেজেন্ট করে; প্রতিটি পৃষ্ঠার সম্পদ একটি ব্লগ সম্পদের সন্তান।
- ব্যবহারকারী সম্পদ : একটি অ-বেনামী ব্যবহারকারীর প্রতিনিধিত্ব করে। এটি একটি পৃষ্ঠা, পোস্ট বা মন্তব্যের লেখক সনাক্ত করতে ব্যবহৃত হয়।
ব্লগার এপিআই ডেটা মডেলটি সম্পদের গোষ্ঠীর উপর ভিত্তি করে, যাকে বলা হয় সংগ্রহ:
- ব্লগ সংগ্রহ
- ক ব্লগ সংগ্রহে ব্যবহারকারীর অ্যাক্সেস অধিকার আছে এমন সমস্ত ব্লগ নিয়ে গঠিত। আপনি ব্যবহারকারী দ্বারা ব্লগ তালিকাভুক্ত করতে পারেন, অথবা ID দ্বারা একটি একক ব্লগ পুনরুদ্ধার করতে পারেন৷
- পোস্ট সংগ্রহ
- একটি পোস্ট সংগ্রহ একটি নির্দিষ্ট ব্লগ সম্পদের মধ্যে সমস্ত পোস্ট সংস্থান নিয়ে গঠিত।
- মন্তব্য সংগ্রহ
- একটি মন্তব্য সংগ্রহ একটি নির্দিষ্ট পোস্ট সম্পদের মধ্যে সমস্ত মন্তব্য সংস্থান নিয়ে গঠিত।
- পৃষ্ঠা সংগ্রহ
- একটি পৃষ্ঠা সংগ্রহ একটি নির্দিষ্ট ব্লগ সম্পদের মধ্যে সমস্ত পৃষ্ঠা সম্পদ নিয়ে গঠিত।
- ব্যবহারকারীদের সংগ্রহ
- একটি ব্যবহারকারী সংগ্রহ ব্লগারে সমস্ত ব্যবহারকারীর সম্পদ নিয়ে গঠিত, এবং এইভাবে তালিকাভুক্ত করা যাবে না। একজন ব্যবহারকারী তাদের নিজস্ব ব্যবহারকারীর সম্পদ (কিন্তু অন্য কারো নয়) আইডির মাধ্যমে বা শনাক্তকারী
self
ব্যবহার করে পুনরুদ্ধার করতে পারে।
ব্লগার এপিআই অপারেশন
আপনি নিম্নলিখিত সারণীতে বর্ণিত ব্লগার API-এ সংগ্রহ এবং সংস্থানগুলির জন্য বিভিন্ন পদ্ধতি ব্যবহার করতে পারেন।
অপারেশন | বর্ণনা | REST HTTP ম্যাপিং |
---|---|---|
তালিকা | একটি সংগ্রহের মধ্যে সমস্ত সংস্থান তালিকাভুক্ত করে। | একটি সংগ্রহ URI এ GET । |
পাওয়া | একটি নির্দিষ্ট সম্পদ পায়। | একটি রিসোর্স ইউআরআই GET । |
getByUrl | একটি সংস্থান পায়, এটি URL দ্বারা সন্ধান করে৷ | একটি প্যারামিটার হিসাবে পাস করা URL সহ GET . |
getByPath | এটির পথ ধরে এটি সন্ধান করে একটি সংস্থান পায়৷ | একটি প্যারামিটার হিসাবে পাস করা পথের সাথে GET । |
listByUser | একটি ব্যবহারকারীর মালিকানাধীন সম্পদ তালিকা. | ব্যবহারকারীর মালিকানাধীন সংগ্রহে GET । |
অনুসন্ধান | কোয়েরি প্যারামিটারের উপর ভিত্তি করে সম্পদের জন্য অনুসন্ধান করুন। | একটি অনুসন্ধান ইউআরএলে GET , একটি প্যারামিটার হিসাবে ক্যোয়ারী পাস করে। |
সন্নিবেশ | একটি সংগ্রহে একটি সংস্থান তৈরি করুন। | একটি সংগ্রহ URI-এ POST । |
মুছে ফেলা | একটি সম্পদ মুছে দেয়। | একটি রিসোর্স ইউআরআইতে DELETE । |
প্যাচ | প্যাচ শব্দার্থবিদ্যা ব্যবহার করে একটি সংস্থান আপডেট করুন। | একটি সংস্থান URI-তে PATCH । |
হালনাগাদ | একটি সম্পদ আপডেট করুন। | একটি রিসোর্স ইউআরআইতে PUT । |
নীচের সারণীটি দেখায় যে কোন পদ্ধতিগুলি প্রতিটি সংস্থান প্রকার দ্বারা সমর্থিত। সমস্ত তালিকা এবং ব্যক্তিগত ব্লগে অপারেশন পেতে প্রমাণীকরণ প্রয়োজন।
সম্পদের ধরন | সমর্থিত পদ্ধতি | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
তালিকা | পাওয়া | getByUrl | getByPath | listByUser | অনুসন্ধান | সন্নিবেশ | মুছে ফেলা | প্যাচ | হালনাগাদ | |
ব্লগ | না | হ্যাঁ | হ্যাঁ | না | হ্যাঁ | না | না | না | না | না |
পোস্ট | হ্যাঁ | হ্যাঁ | না | হ্যাঁ | না | হ্যাঁ | হ্যাঁ | হ্যাঁ | হ্যাঁ | হ্যাঁ |
মন্তব্য | হ্যাঁ | হ্যাঁ | না | না | না | না | না | না | না | না |
পাতা | হ্যাঁ | হ্যাঁ | না | না | না | না | না | না | না | না |
ব্যবহারকারীদের | না | হ্যাঁ | না | না | না | না | না | না | না | না |
কলিং শৈলী
API চালু করার বিভিন্ন উপায় রয়েছে:
- সরাসরি বা জাভাস্ক্রিপ্ট থেকে REST ব্যবহার করা (কোন সার্ভার-সাইড কোডের প্রয়োজন নেই)
- ক্লায়েন্ট লাইব্রেরি ব্যবহার করে।
বিশ্রাম
REST হল সফ্টওয়্যার আর্কিটেকচারের একটি শৈলী যা ডেটা অনুরোধ এবং পরিবর্তন করার জন্য একটি সুবিধাজনক এবং সামঞ্জস্যপূর্ণ পদ্ধতি প্রদান করে।
REST শব্দটি " রিপ্রেজেন্টেশনাল স্টেট ট্রান্সফার " এর জন্য সংক্ষিপ্ত। Google API-এর প্রসঙ্গে, এটি Google দ্বারা সংরক্ষিত ডেটার উপস্থাপনা পুনরুদ্ধার এবং সংশোধন করার জন্য HTTP ক্রিয়া ব্যবহারকে বোঝায়।
একটি RESTful সিস্টেমে, সম্পদ একটি ডেটা স্টোরে সংরক্ষণ করা হয়; একটি ক্লায়েন্ট একটি অনুরোধ পাঠায় যে সার্ভার একটি নির্দিষ্ট ক্রিয়া সম্পাদন করে (যেমন একটি সংস্থান তৈরি করা, পুনরুদ্ধার করা, আপডেট করা বা মুছে ফেলা), এবং সার্ভার ক্রিয়াটি সম্পাদন করে এবং একটি প্রতিক্রিয়া পাঠায়, প্রায়শই নির্দিষ্ট সংস্থানের উপস্থাপনা আকারে।
Google-এর RESTful API-এ, ক্লায়েন্ট একটি HTTP ক্রিয়া যেমন POST
, GET
, PUT
, বা DELETE
ব্যবহার করে একটি ক্রিয়া নির্দিষ্ট করে৷ এটি নিম্নলিখিত ফর্মের একটি বিশ্বব্যাপী-অনন্য URI দ্বারা একটি সংস্থান নির্দিষ্ট করে:
https://www.googleapis.com/apiName/apiVersion/resourcePath?parameters
যেহেতু সমস্ত API সংস্থানগুলিতে অনন্য HTTP- অ্যাক্সেসযোগ্য URI রয়েছে, REST ডেটা ক্যাশিং সক্ষম করে এবং ওয়েবের বিতরণ করা অবকাঠামোর সাথে কাজ করার জন্য অপ্টিমাইজ করা হয়৷
আপনি HTTP 1.1 স্ট্যান্ডার্ড ডকুমেন্টেশনে পদ্ধতির সংজ্ঞাগুলি দরকারী খুঁজে পেতে পারেন; তারা GET
, POST
, PUT
, এবং DELETE
এর স্পেসিফিকেশন অন্তর্ভুক্ত করে।
ব্লগার এপিআইতে বিশ্রাম নিন
সমর্থিত ব্লগার ক্রিয়াকলাপগুলি সরাসরি REST HTTP ক্রিয়াগুলিতে ম্যাপ করে, যেমনটি ব্লগার API অপারেশনগুলিতে বর্ণিত হয়েছে৷
ব্লগার API URI-এর জন্য নির্দিষ্ট বিন্যাস হল:
https://www.googleapis.com/blogger/v3/users/userId https://www.googleapis.com/blogger/v3/users/self https://www.googleapis.com/blogger/v3/users/userId/blogs https://www.googleapis.com/blogger/v3/users/self/blogs https://www.googleapis.com/blogger/v3/blogs/blogId https://www.googleapis.com/blogger/v3/blogs/byurl https://www.googleapis.com/blogger/v3/blogs/blogId/posts https://www.googleapis.com/blogger/v3/blogs/blogId/posts/bypath https://www.googleapis.com/blogger/v3/blogs/blogId/posts/search https://www.googleapis.com/blogger/v3/blogs/blogId/posts/postId https://www.googleapis.com/blogger/v3/blogs/blogId/posts/postId/comments https://www.googleapis.com/blogger/v3/blogs/blogId/posts/postId/comments/commentId https://www.googleapis.com/blogger/v3/blogs/blogId/pages https://www.googleapis.com/blogger/v3/blogs/blogId/pages/pageId
ব্যবহৃত URI-এর সম্পূর্ণ ব্যাখ্যা এবং API-এ প্রতিটি সমর্থিত অপারেশনের ফলাফল ব্লগার API রেফারেন্স নথিতে সংক্ষিপ্ত করা হয়েছে।
উদাহরণ
প্রমাণিত ব্যবহারকারীর অ্যাক্সেস অধিকার আছে এমন ব্লগের তালিকা করুন:
GET https://www.googleapis.com/blogger/v3/users/self/blogs?key=YOUR-API-KEY
কোড.blogger.com ব্লগে পোস্টগুলি পান, যার ব্লগ আইডি 3213900 আছে:
GET https://www.googleapis.com/blogger/v3/blogs/3213900?key=YOUR-API-KEY
জাভাস্ক্রিপ্ট থেকে REST
আপনি callback
ক্যোয়ারী প্যারামিটার ব্যবহার করে এবং একটি কলব্যাক ফাংশন প্রদান করে জাভাস্ক্রিপ্ট থেকে ব্লগার এপিআই চালু করতে পারেন। যখন ব্রাউজার স্ক্রিপ্ট লোড করে, কলব্যাক ফাংশনটি কার্যকর করা হয় এবং কলব্যাক ফাংশনে প্রতিক্রিয়া প্রদান করা হয়। এই পদ্ধতিটি আপনাকে সমৃদ্ধ অ্যাপ্লিকেশন লিখতে দেয় যা সার্ভার সাইড কোডের প্রয়োজন ছাড়াই ব্লগার ডেটা প্রদর্শন করে।
আপনি আপনার API কী দিয়ে YOUR-API-KEY প্রতিস্থাপন করার পরে নিম্নলিখিত উদাহরণটি code.blogger.com ব্লগ থেকে একটি পোস্ট পুনরুদ্ধার করে।
<html> <head> <title>Blogger API Example</title> </head> <body> <div id="content"></div> <script> function handleResponse(response) { document.getElementById("content").innerHTML += "<h1>" + response.title + "</h1>" + response.content; } </script> <script src="https://www.googleapis.com/blogger/v3/blogs/3213900/posts/8398240586497962757?callback=handleResponse&key=YOUR-API-KEY"></script> </body> </html>
উপাত্ত বিন্যাস
JSON
JSON (জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন) হল একটি সাধারণ, ভাষা-স্বাধীন ডেটা ফর্ম্যাট যা নির্বিচারে ডেটা স্ট্রাকচারের একটি সাধারণ পাঠ্য উপস্থাপনা প্রদান করে। আরও তথ্যের জন্য, json.org দেখুন।