Blogger API: Başlarken

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.
Blogs kaynağının iki alt kaynak türü vardır: sayfalar ve yayınlar.
          Bir gönderi kaynağının yorum kaynağı alt öğeleri olabilir.
Kaynaklar arasındaki ilişkilere genel bakış

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 self tanı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:

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.