Bu belgede, Blogger API'yi kullanmaya nasıl başlayacağınız açıklanmaktadır.
Başlamadan önce
Google Hesabı edinin
Google Hesabı oluşturduğunuzdan emin olun. Kendinizi yanlışlıkla veri kaybına karşı korumak için geliştirme ve test amaçlarıyla ayrı bir Google Hesabı kullanmanızı öneririz. Zaten bir test hesabınız varsa hazırsınız demektir. Test verilerinizi ayarlamak, düzenlemek veya görüntülemek için Blogger kullanıcı arayüzünü ziyaret edebilirsiniz.
Blogger'ı daha yakından tanıyın
Blogger kavramlarına aşina değilseniz kodlamaya başlamadan önce bu belgeyi okuyun ve kullanıcı arayüzünü deneyin. Bu belgede, Blogger'ı, web programlama kavramlarını ve web veri biçimlerini bildiğiniz varsayılır.
İstekleri yetkilendirme ve uygulamanızı tanımlama hakkında bilgi
Uygulamanız gizli veri isteğinde bulunduğunda isteğin, söz konusu verilere erişimi olan kimliği doğrulanmış bir kullanıcı tarafından yetkilendirilmesi gerekir.
Uygulamanız herkese açık veri isteğinde bulunduğunda isteğin yetkilendirilmesi gerekmez ancak API anahtarı gibi bir tanımlayıcı ile birlikte gönderilmesi gerekir.
İstekleri yetkilendirme ve API anahtarlarını kullanma hakkında bilgi için API'yi Kullanma dokümanındaki İstekleri yetkilendirme ve uygulamanızı tanımlama bölümüne bakın.
Blogger API arka planı
Blogger kavramları
Blogger beş temel kavram üzerine kuruludur:
- Bloglar: API'nin temel kavramı. Bir blogda yayınlar ve sayfalar bulunur. Bu, blog adı ve açıklaması gibi blog meta bilgilerinin bulunduğu kapsayıcıdır.
- Yayınlar: Blog yayını, blog yazarının oluşturduğu yayınlanabilir öğedir. Bu bilgiler güncel olup yazarların şu anda dünyayla paylaşmak istedikleri içerikleri yansıtır. Zaman geçtikçe blog yayınlarının içeriğinin eskidiği ve daha az alakalı hale geldiği anlaşılmaktadır.
- Yorumlar: Yorumlar, blog yayını yazarı dışındaki kişilerin yazarın yazdıklarına tepki gösterdiği yerdir. Tuğlalardan buketlere kadar her şey.
- Sayfalar: Sayfalar, biyografik bilgiler veya kullanıcıyla iletişim kurma yöntemleri gibi statik içeriklerin bulunduğu yerlerdir. Bu genellikle çok sık değişmeyen, zamandan bağımsız bilgilerdir.
- Kullanıcılar: Kullanıcı, Blogger ile etkileşimde bulunan herkesi ifade eder. Bu kişiler Yazar, Yönetici veya sadece Okuyucu olarak hareket edebilir. Herkese açık bloglarda okuyucular anonim olabilir ancak özel bloglarda okuyucunun Blogger tarafından tanımlanması gerekir.
Blogger API veri modeli
Kaynak, benzersiz tanımlayıcıya sahip bağımsız bir veri öğesidir. Blogger JSON API beş tür kaynak üzerinde çalışır:
- Blogs kaynağı: Bir blogu temsil eder.
- Posts kaynağı: Bir yayını temsil eder. Her posts kaynağı, bir blogs kaynağının alt öğesidir.
- Comments kaynağı: Belirli bir yayına yapılan yorumu temsil eder. Her comments kaynağı, posts kaynağının alt öğesidir.
- Sayfalar kaynağı: Statik bir sayfayı temsil eder. Her sayfalar kaynağı, bir blog kaynağının alt öğesidir.
- Users kaynağı: Anonim olmayan bir kullanıcıyı temsil eder. Bu, bir sayfanın, yayının veya yorumun yazarını tanımlamak için kullanılır.
Blogger API veri modeli, koleksiyon adı verilen kaynak gruplarına dayanır:
- Bloglar koleksiyonu
- Bir <span="apicollection">blog koleksiyonu, kullanıcının erişim haklarına sahip olduğu tüm bloglardan oluşur. Blogları kullanıcıya göre listeleyebilir veya kimliğe göre tek bir blog alabilirsiniz.</span="apicollection">
- Yayın koleksiyonu
- Yayın koleksiyonu, belirli bir blog kaynağındaki tüm yayın kaynaklarından oluşur.
- Yorum koleksiyonu
- Yorum koleksiyonu, belirli bir yayın kaynağındaki tüm yorum kaynaklarından oluşur.
- Sayfalar koleksiyonu
- Bir sayfa koleksiyonu, belirli bir blog kaynağındaki tüm sayfa kaynaklarından oluşur.
- Kullanıcı Koleksiyonu
- Bir kullanıcı koleksiyonu, Blogger'daki tüm kullanıcı kaynaklarından oluşur ve bu nedenle listelenemez. Kullanıcılar, kendi users kaynağını (başka kimsenin kaynağını değil) kimliğe göre veya
selftanımlayıcısını kullanarak alabilir.
Blogger API işlemleri
Aşağıdaki tabloda açıklandığı gibi, Blogger API'deki koleksiyonlarda ve kaynaklarda çeşitli yöntemler çağırabilirsiniz.
| İşlem | Açıklama | REST HTTP eşlemeleri |
|---|---|---|
| list | Bir koleksiyondaki tüm kaynakları listeler. | GET koleksiyon URI'sinde. |
| get | Belirli bir kaynağı alır. | GET simgesini tıklayın. |
| getByUrl | URL'ye göre arayarak bir kaynak alır. | GET ile parametre olarak iletilen URL. |
| getByPath | Bir kaynağı yoluna göre arayarak alır. | GET ile birlikte yol parametre olarak aktarılır. |
| listByUser | Bir kullanıcıya ait kaynakları listeler. | GET Kullanıcıya ait bir koleksiyonda. |
| search | Bir sorgu parametresine göre kaynak arama. | GET sorgunun parametre olarak iletildiği bir arama URL'sinde. |
| insert | Koleksiyonda kaynak oluşturma | POST koleksiyon URI'sinde. |
| sil | Bir kaynağı siler. | DELETE simgesini tıklayın. |
| patch | Yama semantiğini kullanarak bir kaynağı güncelleyin. | PATCH simgesini tıklayın. |
| update | Bir kaynağı güncelleyin. | PUT simgesini tıklayın. |
Aşağıdaki tabloda, her kaynak türü tarafından desteklenen yöntemler gösterilmektedir. Özel bloglardaki tüm list ve get işlemleri için kimlik doğrulama gerekir.
Kaynak Türü |
Desteklenen Yöntemler |
|||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| list | get | getByUrl | getByPath | listByUser | search | insert | delete | patch | update | |
| Bloglar | hayır | evet | evet | hayır | evet | hayır | hayır | hayır | hayır | hayır |
| Yayınlar | evet | evet | hayır | evet | hayır | evet | evet | evet | evet | evet |
| Yorumlar | evet | evet | hayır | hayır | hayır | hayır | hayır | hayır | hayır | hayır |
| Sayfalar | evet | evet | hayır | hayır | hayır | hayır | hayır | hayır | hayır | hayır |
| Kullanıcı sayısı | hayır | evet | hayır | hayır | hayır | hayır | hayır | hayır | hayır | hayır |
Arama stilleri
API'yi çağırmanın birkaç yolu vardır:
- Doğrudan veya JavaScript'ten REST kullanma (sunucu tarafı kodu gerekmez)
- İstemci kitaplıklarını kullanma
REST
REST, veri isteme ve değiştirmeye kullanışlı ve tutarlı yaklaşım sağlayan bir yazılım mimarisi stilidir.
REST terimi, "Representational State Transfer"in (Temsili Durum Aktarımı) kısaltmasıdır. Google API'leri bağlamında, Google tarafından saklanan verilerin temsillerini almak ve değiştirmek için HTTP fiillerini kullanma anlamına gelir.
RESTful bir sistemde, kaynaklar bir veri deposunda saklanır. Bir istemci, sunucunun belirli bir işlemi (ör. kaynak oluşturma, alma, güncelleme veya silme) gerçekleştirmesi için istek gönderir. Sunucu, işlemi gerçekleştirir ve yanıt gönderir. Bu yanıt genelde belirtilen kaynağın bir temsili biçimindedir.
Google'ın RESTful API'lerinde istemci, HTTP fiili kullanarak (ör. POST, GET, PUT veya DELETE) bir işlem belirtir. Aşağıdaki biçimde yer alan küresel olarak benzersiz bir URI ile kaynak belirtir:
https://www.googleapis.com/apiName/apiVersion/resourcePath?parameters
Tüm API kaynaklarının HTTP tarafından erişilebilen benzersiz URI'ları olduğu için REST, veri önbelleğe almayı etkinleştirir ve web'deki dağıtılan altyapıyla birlikte çalışmak üzere optimize edilmiştir.
HTTP 1.1 standartları belgelerindeki yöntem tanımlarını yararlı bulabilirsiniz. Bu tanımlar, GET, POST, PUT ve DELETE özelliklerini içerir.
Blogger API'de REST
Desteklenen Blogger işlemleri, Blogger API işlemleri bölümünde açıklandığı gibi doğrudan REST HTTP fiilleriyle eşlenir.
Blogger API URI'lerinin biçimi şu şekildedir:
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
Kullanılan URI'lerin ve API'deki desteklenen her işlemin sonuçlarının tam açıklaması Blogger API Referansı belgesinde özetlenmiştir.
Örnekler
Kimliği doğrulanmış kullanıcının erişim haklarına sahip olduğu blogları listeleme:
GET https://www.googleapis.com/blogger/v3/users/self/blogs?key=YOUR-API-KEY
Blog kimliği 3213900 olan code.blogger.com blogundaki yayınları alma:
GET https://www.googleapis.com/blogger/v3/blogs/3213900?key=YOUR-API-KEY
JavaScript'ten REST
callback sorgu parametresini kullanarak ve bir geri çağırma işlevi sağlayarak Blogger API'yi JavaScript'ten çağırabilirsiniz.
Tarayıcı komut dosyasını yüklediğinde geri çağırma işlevi yürütülür ve yanıt, geri çağırma işlevine sağlanır. Bu yaklaşım, sunucu tarafı kodu gerektirmeden Blogger verilerini gösteren zengin uygulamalar yazmanıza olanak tanır.
Aşağıdaki örnek, YOUR-API-KEY kısmını API anahtarınızla değiştirdikten sonra code.blogger.com blogundan bir gönderi alır.
<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>Veri biçimi
JSON
JSON (JavaScript Object Notation), rastgele veri yapılarını basit metin biçiminde sunan, yaygın şekilde kullanılan ve dilden bağımsız bir veri biçimidir. Daha fazla bilgi için json.org adresine bakın.