Önemli: Bu, sayfanın eski bir sürümüdür. En son sürüm için sol taraftaki gezinme çubuğundaki bağlantıları kullanın.
Blogger Data API, istemci uygulamalarının Blogger içeriğini Google Data API feed'leri biçiminde görüntülemesine ve güncellemesine olanak tanır.
İstemci uygulamanız, yeni blog yayınları oluşturmak, mevcut blog yayınlarını düzenlemek veya silmek ve belirli ölçütlere uyan blog yayınlarını sorgulamak için Blogger Veri API'sini kullanabilir.
Bu doküman, Blogger Data API'nin özellikleri hakkında bilgi vermenin yanı sıra ham XML ve HTTP kullanan temel Data API etkileşimlerine dair örnekler de sunar. Bu dokümanı okuduktan sonra, bu geliştirici kılavuzunun programlama diline özel bölümlerini inceleyerek istemci kitaplıklarımızı kullanarak API ile etkileşim kurma hakkında daha fazla bilgi edinebilirsiniz.
İçindekiler
Kitle
Bu doküman, XML ve HTTP kullanarak Blogger ile etkileşime geçebilecek istemci uygulamaları yazmak isteyen programcılara yöneliktir.
Bu dokümanda, Google Veri API'leri protokolünün temel fikirlerini anladığınız varsayılmaktadır.
UNIX sistemi kullanıyorsanız ve bu belgedeki örnekleri kod yazmadan denemek istiyorsanız UNIX komut satırı yardımcı programları curl
veya wget
'ü yararlı bulabilirsiniz. Daha fazla bilgi için bu yardımcı programların manuel sayfalarına bakın.
Blogger Data API referans bilgileri için Protokol referans kılavuzuna bakın.
Başlarken
Blogger hesabı oluşturma
Test amacıyla Blogger hesabına kaydolmanız önerilir. Blogger, Google Hesaplarını kullanır. Dolayısıyla, zaten bir Google Hesabınız varsa hazırsınız demektir.
Blogger hizmetinde kimlik doğrulama
Blogger Data API'yi kullanarak hem herkese açık hem de özel feed'lere erişebilirsiniz. Herkese açık feed'ler için kimlik doğrulama gerekmez ancak bunlar salt okunurdur. Blogları değiştirmek istiyorsanız istemcinizin gizli feed'ler istemeden önce kimliğini doğrulaması gerekir. İki yaklaşımdan birini kullanarak kimlik doğrulaması yapabilir: AuthSub proxy kimlik doğrulaması veya ClientLogin kullanıcı adı/şifre kimlik doğrulaması.
Genel olarak Google Veri API'leriyle kimlik doğrulama hakkında daha fazla bilgi için kimlik doğrulama belgelerine bakın.
Bu dokümanın sonraki bölümlerindeki örneklerin çoğunda, uygun kimlik doğrulamayı sağladığınız varsayılır.
AuthSub proxy kimlik doğrulaması
AuthSub proxy kimlik doğrulaması, kullanıcılarının Google Hesaplarında kimliğini doğrulaması gereken web uygulamaları tarafından kullanılır. Web sitesi operatörü ve istemci kodu, Blogger kullanıcısının kullanıcı adına ve şifresine erişemez. Bunun yerine, istemci belirli bir kullanıcı adına işlem yapmasına olanak tanıyan özel AuthSub jetonları alır. Daha ayrıntılı bilgi için AuthSub belgelerine bakın.
Bir kullanıcı uygulamanızı ilk kez ziyaret ettiğinde kimliği henüz doğrulanmamıştır. Bu durumda, kullanıcıların bloglarına erişim isteğinizin kimliğini doğrulamak için bazı bilgiler ve kullanıcıyı bir Google sayfasına yönlendiren bir bağlantı göstermeniz gerekir.
AuthSubRequest URL'sine aşağıdaki sorgu parametreleri dahildir:
- sonraki
- Google'ın kimlik doğrulamasından sonra kullanıcıyı yönlendirmesi gereken sayfanın URL'si.
- kapsam
- Uygulamanın, Blogger feed'lerine erişmek için jeton istediğini gösterir. Kullanılacak kapsam dizesi
http://www.blogger.com/feeds/
'tir (elbette URL kodlamalıdır). - güvenli
- İstemcinin güvenli bir jeton isteyip istemediğini belirtir.
- oturum
- Döndürülen jetonun çok kullanımlı (oturum) jetonuyla değiştirilip değiştirilemeyeceğini belirtir.
AuthSubRequest URL'si aşağıdaki gibi görünebilir:
https://www.google.com/accounts/AuthSubRequest?scope=http%3A%2F%2Fwww.blogger.com%2Ffeeds%2F&session=1&secure=0&next=http%3A%2F%2Fwww.example.com%2Fwelcome.html
Kullanıcı, Google'ın sitesinin bağlantısını takip eder ve Google Hesabı'nda kimlik doğrulaması yapar.
Kullanıcı kimliğini doğruladıktan sonra AuthSub sistemi, kullanıcıyı AuthSubRequest URL'sinin next
sorgu parametresinde belirttiğiniz URL'ye yönlendirir. AuthSub sistemi, token
sorgu parametresinin değeri olarak bu URL'ye bir kimlik doğrulama jetonu ekler. Örneğin:
http://www.example.com/welcome.html?token=yourAuthToken
Bu jeton değeri, tek kullanımlık bir AuthSub jetonunu temsil eder. Bu örnekte, session=1
belirtildiği için bu jeton, bir Yetkilendirme üstbilgisinde tek kullanımlık jetonla AuthSubSessionToken
hizmetini çağırarak AuthSub oturum jetonuyla değiştirilebilir.
GET /accounts/AuthSubSessionToken HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: AuthSub token="yourAuthToken" User-Agent: Java/1.5.0_06 Host: www.google.com Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Connection: keep-alive
AuthSubSessionToken hizmet yanıtı, oturum jetonunu içeren bir Token
üstbilgisi ve jetonun ne kadar süreyle geçerli olacağını belirten bir Expiration
üstbilgisi içerir.
Ardından uygulamanız, Blogger ile sonraki etkileşimlerin Authorization
başlığında oturum jetonu değerini kullanabilir.
Blogger'a gönderebileceğiniz, güvenli olmayan bir jeton içeren HTTP isteği örneğini aşağıda bulabilirsiniz:
GET /feeds/blogID/blogs/posts/defaults HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: AuthSub token="yourSessionToken" User-Agent: Java/1.5.0_06 Host: www.blogger.com Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Connection: keep-alive
ClientLogin kullanıcı adı/şifre kimlik doğrulaması
İstemciniz bağımsız, tek kullanıcılı "yüklü" bir istemciyse (masaüstü uygulaması gibi) ClientLogin kimlik doğrulamasını kullanın. ClientLogin mekanizmasını kullanarak kimlik doğrulama jetonu istemek için aşağıdaki URL'ye bir POST
isteği gönderin:
https://www.google.com/accounts/ClientLogin
POST
gövdesi, application/x-www-form-urlencoded
içerik türünü kullanarak bir HTML formu tarafından iletilen parametrelere benzeyen bir dizi sorgu parametresi içermelidir. Bu parametreler şunlardır:
- E-posta
- Kullanıcının e-posta adresi.
- Şifre
- Kullanıcının şifresi.
- hizmet
- Blogger hizmet adı
blogger
. (Diğer hizmet adları için hizmet adı listesine bakın.) - accountType
- Blogger API kullanılırken bu değer her zaman
GOOGLE
olarak ayarlanmalıdır. Bu parametrenin ayarlanmaması, G Suite hesabı da olan kullanıcıların erişimini engeller. - source
- İstemci uygulamanızı tanımlar. companyName-applicationName-versionID biçiminde olmalıdır. Örneklerde
exampleCo-exampleApp-1
adı kullanılmıştır.
Parametreler hakkında daha fazla bilgi için Yüklü Uygulamalar için Kimlik Doğrulama belgesine bakın.
Kimlik doğrulama isteği başarısız olursa sunucu bir HTTP 403 Forbidden
durum kodu döndürür.
İşlem başarılı olursa sunucu bir HTTP 200 OK
durum kodu ve yanıt gövdesinde üç uzun alfanümerik kod döndürür: SID, LSID ve Auth. Kimlik doğrulama değeri, sonraki isteklerinizin her birinde Blogger'a göndereceğiniz yetkilendirme jetonudur. Bu nedenle, bu değerin bir kopyasını saklayın. SID ve LSID değerlerini yoksayabilirsiniz.
Özel feed'lere gönderilen tüm isteklerde kimlik doğrulama gerektiğinden, Blogger ile sonraki tüm etkileşimlerde aşağıdaki biçimi kullanarak Authorization başlığını ayarlamanız gerekir:
Authorization: GoogleLogin auth=yourAuthToken
Burada yourAuthToken
, ClientLogin isteği tarafından döndürülen Auth dizesidir.
Örnek istekler ve yanıtlar da dahil olmak üzere ClientLogin kimlik doğrulaması hakkında daha fazla bilgi için Yüklü Uygulamalar için Kimlik Doğrulama dokümanlarını inceleyin.
Not: Belirli bir oturumdaki tüm istekler için aynı jetonu kullanın. Her Blogger isteği için yeni bir jeton edinmeyin.
Not: ClientLogin dokümanlarında açıklandığı gibi, kimlik doğrulama isteği başarısız olabilir ve CAPTCHA istemi istenebilir. Google'ın CAPTCHA sorgusunu gönderip işlemesini istiyorsanız kullanıcıyı https://www.google.com/accounts/DisplayUnlockCaptcha?service=blogger
(ClientLogin dokümanlarında verilen CAPTCHA işleme URL'si yerine) adresine yönlendirin.
Blog listesini alma
Blogger Data API, belirli bir kullanıcının bloglarını listeleyen bir feed sağlar. Bu feed, "meta feed" olarak bilinir.
Blogların listesini almak için aşağıdaki URL'ye bir HTTP GET
gönderin:
http://www.blogger.com/feeds/userID/blogs
Not: Kullanıcı kimliği yerine default
değerini de kullanabilirsiniz. Bu durumda Blogger, kimlik bilgileri istekte bulunan kullanıcının blog listesini döndürür.
Meta feed'deki bir giriş şu şekilde görünebilir:
<entry> <id>tag:blogger.com,1999:blog-blogID.post-postID</id> <published>2006-08-02T18:44:43.089-07:00</published> <updated>2006-11-08T18:10:23.020-08:00</updated> <title type='text'>Lizzy's Diary</title> <summary type='html'>Being the journal of Elizabeth Bennet</summary> <link rel='alternate' type='text/html' href='http://blogName.blogspot.com/'> </link> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogName.blogspot.com/feeds/posts/default'> </link> <link rel='http://schemas.google.com/g/2005#post' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID/posts/default'> </link> <link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/userID/blogs/blogID'> </link> <link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/userID/blogs/blogID'> </link> <author> <name>Elizabeth Bennet</name> <email>noreply@blogger.com</email> <uri>http://www.blogger.com/profile/profileID</uri> </author> </entry>
Bu öğelerin her birinin ne anlama geldiği hakkında bilgi edinmek için Google Data API'leri Protokol Referansı belgesine veya Atom 1.0 spesifikasyonuna bakın.
İsteğiniz herhangi bir nedenle başarısız olursa Blogger farklı bir durum kodu döndürebilir. HTTP durum kodları hakkında daha fazla bilgiyi Google Veri API'leri Protokol Referansı belgesinde de bulabilirsiniz.
Yayın oluşturma
Blogger Veri API'si, yeni blog girişleri oluşturmanıza ve yayınlamanıza, ayrıca giriş taslakları oluşturmanıza olanak tanır.
Blog yayını yayınlama
Kimlik doğrulamasını tamamladıktan sonra yeni blog girişleri yayınlayabilirsiniz.
İlk olarak, yayınlanacak yayının XML temsilini oluşturun. Bu XML'in Atom <entry>
öğesi biçiminde olması gerekir. Bu öğe şu şekilde görünebilir:
<entry xmlns='http://www.w3.org/2005/Atom'> <title type='text'>Marriage!</title> <content type='xhtml'> <div xmlns="http://www.w3.org/1999/xhtml"> <p>Mr. Darcy has <em>proposed marriage</em> to me!</p> <p>He is the last man on earth I would ever desire to marry.</p> <p>Whatever shall I do?</p> </div> </content> <category scheme="http://www.blogger.com/atom/ns#" term="marriage" /> <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Darcy" /> </entry>
Not: Yayınlar için özel bir yazar ayarlama özelliği şu anda desteklenmiyor. Tüm yeni gönderiler, kimliği doğrulanmış kullanıcı tarafından oluşturulmuş gibi görünür.
Bu girişi yayınlamak için aşağıdaki şekilde blogun yayın URL'sine gönderin. Öncelikle, application/atom+xml
içerik türünü kullanarak Atom <entry>
öğenizi yeni bir POST
isteğinin gövdesine yerleştirin. Ardından, rel
özelliğinin #post
ile bittiği <link>
öğesini bularak meta feed'de blogun gönderi URL'sini bulun. Blogun yayın URL'si, bu öğenin href
özelliği olarak şu biçimde verilir:
http://www.blogger.com/feeds/blogID/posts/default
Not: Bu URL, blogun kullanıcılar tarafından okunabilen sürümünün <head>
bölümünde görünen <link rel="service.post">
etiketindeki URL ile aynıdır.
Blogger, gönderdiğiniz girişi kullanarak bir blog yayını oluşturur ve ardından yeni yayının bir kopyasını <entry>
öğesi biçiminde 201 CREATED
HTTP durum koduyla birlikte döndürür. Döndürülen giriş, gönderdiğinizle aynıdır ancak Blogger tarafından eklenen çeşitli öğeler (ör. <id>
öğesi) de içerir.
İsteğiniz herhangi bir nedenle başarısız olursa Blogger farklı bir durum kodu döndürebilir. Durum kodları hakkında bilgi edinmek için Google Data API protokolü referans belgesine bakın.
Blog yayını taslağı oluşturma
Taslak yayınlar, herkese açık yayınlarla aynı şekilde oluşturulur ancak girişe, yayının (henüz) yayınlanmaması gerektiğini belirten bir <app:control>
öğesi eklenir.
Bu <app:control>
öğesi, alt öğe olarak tek bir <app:draft>
öğesi içermelidir:
<app:control xmlns:app='http://purl.org/atom/app#'> <app:draft>yes</app:draft> </app:control>
Gönderinin taslak olarak tanınması için <app:draft>
öğesinde bulunan verilerin yes dizesi olması gerekir.
Mevcut bir taslak blog yayınını, taslak yayını alarak, <app:draft>
öğesinin verilerini no dizesi olarak ayarlayarak ve ardından yayını güncelleyerek yayınlanmış bir yayına dönüştürebilirsiniz. Yayınları alma ve güncelleme işlemleri sonraki iki bölümde ele alınmıştır.
Not: <app:control>
ve <app:draft>
ad alanları da dahil olmak üzere Atom Yayınlama Protokolü hakkında daha fazla bilgi için RFC 5023'e bakın.
Yayınları alma
Aşağıdaki bölümlerde, sorgu parametreleri ile ve sorgu parametreleri olmadan blog yayınlarının listesinin nasıl alınacağı açıklanmaktadır.
Blogger'daki herkese açık bir feed'i kimlik doğrulaması yapmadan sorgulayabilirsiniz. Bu nedenle, herkese açık bir blogdan blog yayınlarını alırken Authorization parametresini ayarlamanız gerekmez.
Tüm blog yayınlarını alma
Kullanıcının yayınlarını almak için blog'un feed URL'sine bir HTTP GET
isteği gönderin. Ardından Blogger, uygun blog girişlerini içeren bir feed döndürür. Örneğin, liz@gmail.com adresine ait blog yayınlarının listesini almak için Blogger'a aşağıdaki HTTP isteğini gönderin (blogID
yerine uygun değeri eklemeyi unutmayın):
GET http://www.blogger.com/feeds/blogID/posts/default
Ardından Blogger, bir HTTP 200 OK
durum kodu ve blog yayınlarını içeren standart bir Atom 1.0 feed'i döndürür.
Aşağıda, yalnızca bir yayını olan bir blogun feed'i örneği verilmiştir. Bu örneği, insanlar tarafından daha kolay okunabilmesi için biraz düzenlediğimizi fark edin. Özellikle gerçek Blogger feed'leri gerçek kimlikleri ve URL'leri içerir.
<feed xmlns='http://www.w3.org/2005/Atom'> <id>tag:blogger.com,1999:blog-blogID</id> <updated>2006-11-08T18:10:23.020-08:00</updated> <title type='text'>Lizzy's Diary</title> <link rel='alternate' type='text/html' href='http://blogName.blogspot.com/index.html'> </link> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogName.blogspot.com/feeds/posts/default'> </link> <link rel='self' type='application/atom+xml' href='http://blogName.blogspot.com/feeds/posts/default'> </link> <author> <name>Elizabeth Bennet</name> <email>noreply@blogger.com</email> <uri>http://www.blogger.com/profile/profileID</uri> </author> <generator version='7.00' uri='http://www2.blogger.com'>Blogger</generator> <entry> <id>tag:blogger.com,1999:blog-blogID.post-postID</id> <published>2006-11-08T18:10:00.000-08:00</published> <updated>2006-11-08T18:10:14.954-08:00</updated> <title type='text'>Quite disagreeable</title> <content type='html'><p>I met Mr. Bingley's friend Mr. Darcy this evening. I found him quite disagreeable.</p></content> <link rel='alternate' type='text/html' href='http://blogName.blogspot.com/2006/11/quite-disagreeable.html'> </link> <link rel='self' type='application/atom+xml' href='http://blogName.blogspot.com/feeds/posts/default/postID'> </link> <link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID/posts/default/postID'> </link> <author> <name>Elizabeth Bennet</name> <email>noreply@blogger.com</email> <uri>http://www.blogger.com/profile/profileID</uri> </author> </entry> </feed>
Sorgu parametrelerini kullanarak gönderileri alma
Blogger Data API, belirli ölçütlere uyan bir giriş grubu istemenize olanak tanır (ör. belirli bir tarih aralığında yayınlanan veya güncellenen blog yayınlarını isteme).
Örneğin, tarih aralığı sorgusu göndermek için istek URL'sine published-min
ve published-max
parametrelerini ekleyin. 16 Mart 2008 ile 24 Mart 2008 arasında oluşturulan tüm blog girişlerini almak için blogun feed URL'sine bir HTTP isteği gönderin:
GET http://www.blogger.com/feeds/blogID/posts/default?published-min=2008-03-16T00:00:00&published-max=2008-03-24T23:59:59
Bu GET
isteğini gönderdiğinizde Blogger, bir HTTP 200 OK
durum kodu ve belirttiğiniz tarih aralığında oluşturulan tüm blog yayınlarını içeren bir feed döndürür.
updated-min
ve updated-max
parametreleri, belirli bir aralıktaki tüm blog girişlerinin güncellenmesini sağlamak için de kullanılabilir. Ancak orderby
parametresi de updated
olarak ayarlanmazsa bu parametrelerin yoksayıldığını unutmayın.
Blogger Veri API'si aşağıdaki sorgu parametrelerini destekler:
- alt
- Döndürülecek feed türü (ör.
atom
(varsayılan) veyarss
). - /category
- Feed sonuçlarını filtrelemek için kategorileri (etiket olarak da bilinir) belirtir. Örneğin,
http://www.blogger.com/feeds/blogID/posts/default/-/Fritz/Laurie
hemFritz
hem deLaurie
etiketlerini içeren girişleri döndürür. - max-results
- Döndürülecek maksimum giriş sayısı.
- orderby
- Girişlerin döndürüleceği sıra (ör.
lastmodified
(varsayılan),starttime
veyaupdated
). - published-min, published-max
- Giriş yayınlanma tarihlerinin sınırları.
- start-index
- Alınacak ilk sonucun 1 tabanlı dizini (sayfalama için).
- updated-min, updated-max
- Giriş güncelleme tarihlerinin sınırları.
orderby
parametresiupdated
olarak ayarlanmazsa bu sorgu parametreleri yoksayılır.
Sorgu parametreleri hakkında daha fazla bilgi için Blogger Veri API'si Referans Kılavuzu ve Google Veri API'leri Referans Kılavuzu'na bakın.
Yayınları güncelleme
Mevcut bir blog yayınını güncellemek için önce güncellemek istediğiniz girişi alır, ardından girişi değiştirir ve yayının düzenleme URL'sine, güncellenmiş girişin ileti gövdesinde bulunduğu bir PUT
isteği gönderirsiniz. PUT
yaptığınız girişteki <id>
değerinin, mevcut girişin <id>
değeriyle tam olarak eşleştiğinden emin olun.
Düzenleme URL'si aşağıdaki girişte vurgulanmıştır:
<entry> <id>tag:blogger.com,1999:blog-blogID.post-postID</id> <published>2006-11-08T18:10:00.000-08:00</published> <updated>2006-11-08T18:10:14.954-08:00</updated> <title type='text'>Quite disagreeable</title> <content type='html'><p>I met Mr. Bingley's friend Mr. Darcy this evening. I found him quite disagreeable.</p></content> <link rel='alternate' type='text/html' href='http://blogName.blogspot.com/2006/11/quite-disagreeable.html'> </link> <link rel='self' type='application/atom+xml' href='http://blogName.blogspot.com/feeds/posts/default/postID'> </link> <link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/blogID/posts/default/postID'> </link> <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Bingley" /> <category scheme="http://www.blogger.com/atom/ns#" term="Mr. Darcy" /> <author> <name>Elizabeth Bennet</name> <email>noreply@blogger.com</email> <uri>http://www.blogger.com/profile/profileID</uri> </author> </entry>
ÖNEMLİ: Gelecekte uyumluluğu sağlamak için güncellenmiş bir girişi PUT
ettiğinizde, girişi Blogger'dan aldığınızda mevcut olan XML'in tümünü koruduğunuzdan emin olun. Aksi takdirde, yeni öğeleri uygulayıp feed'e <new-awesome-feature>
öğeleri dahil ettiğimizde müşteriniz bunları döndürmez ve kullanıcılarınız bu öğeleri kaçırır. Google Data API istemci kitaplıklarının tümü bu işlemi doğru şekilde gerçekleştirir. Bu nedenle, kitaplıklardan birini kullanıyorsanız sorun yaşamazsınız.
Not: Yayınlarla ilişkili yazar verilerinin değiştirilmesi şu anda desteklenmemektedir.
Sorun giderme ipucu: Bazı güvenlik duvarları HTTPPUT
iletilerini engeller. Bu sorunun üstesinden gelmek için POST
isteğine bir X-HTTP-Method-Override: PUT
başlığı ekleyebilirsiniz.
Ayrıntılar için Google Data API protokolünün temel özellikleri belgesine bakın.
Yayınları silme
Bir yayını silmek için yayının düzenleme URL'sine DELETE
isteği gönderin.
Bu, yayınları güncellemek için kullanılan URL ile aynıdır.
Sorun giderme ipucu: Bazı güvenlik duvarları HTTPDELETE
iletilerini engeller. Bu sorunun üstesinden gelmek için POST
isteğine bir X-HTTP-Method-Override: DELETE
başlığı ekleyebilirsiniz. Ayrıntılar için Google Data API protokolünün temel özellikleri belgesine bakın.
Yorumlar
Blogger Data API, yorum oluşturmanıza, almanıza ve silmenize olanak tanır. Yorumların güncellenmesi desteklenmez (ve web arayüzünde kullanılamaz).
Yorum oluşturma
Yorum yayınlamak için aşağıdaki gibi bir Atom <entry>
öğesi oluşturun:
<entry xmlns='http://www.w3.org/2005/Atom'> <title type="text">This is my first comment</title> <content type="html">This is my first comment</content> </entry>
Bu yorumu yayınlamak için Atom <entry>
öğenizi application/atom+xml
içerik türünü kullanarak yeni bir POST
isteğinin gövdesine yerleştirin. Ardından POST
isteğini uygun Blogger URL'sine gönderin:
POST http://www.blogger.com/feeds/blogID/postID/comments/default
Not: Şu anda yalnızca kimliği doğrulanmış kullanıcının sahip olduğu bir bloga yorum gönderebilirsiniz.
Not: Yorumlar için özel bir yazar ayarlama özelliği şu anda desteklenmiyor. Tüm yeni yorumlar, kimliği doğrulanmış kullanıcı tarafından oluşturulmuş gibi görünür.
Yorumları alma
Belirli bir yayına ait yorumları almak için yayının yorum feed'i URL'sine GET
gönderebilirsiniz:
GET http://www.blogger.com/feeds/blogID/postID/comments/default
Dilerseniz blogun yorum feed'i URL'sini kullanarak tüm yayınlardaki yorumları da alabilirsiniz:
GET http://www.blogger.com/feeds/blogID/comments/default
Bu istekler, aşağıdaki gibi görünen bir yorum feed'i döndürür:
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>tag:blogger.com,1999:blog-blogID.post-postID.comment-commentID</id> <updated>2007-04-04T21:56:29.803-07:00</updated> <title type="text">My Blog : Time to relax</title> <link rel="alternate" type="text/html" href="http://blogName.blogspot.com/2007/04/first-post.html"/> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blogName.blogspot.com/feeds/postID/comments/default"/> <link rel="self" type="application/atom+xml" href="http://blogName.blogspot.com/feeds/postID/comments/default"/> <author> <name>Blog Author name</name> </author> <generator version="7.00" uri="http://www2.blogger.com">Blogger</generator> <openSearch:totalResults>1</openSearch:totalResults> <openSearch:startIndex>1</openSearch:startIndex> <entry> <id>tag:blogger.com,1999:blog-blogID.post-commentID</id> <published>2007-04-04T21:56:00.000-07:00</published> <updated>2007-04-04T21:56:29.803-07:00</updated> <title type="text">This is my first comment</title> <content type="html">This is my first comment</content> <link rel="alternate" type="text/html" href="http://blogName.blogspot.com/2007/04/first-post.html#commentID"/> <link rel="self" type="application/atom+xml" href="http://blogName.blogspot.com/feeds/postID/comments/default/commentID"/> <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/blogID/postID/comments/default/commentID"/> <thr:in-reply-to href="http://blogName.blogspot.com/2007/04/first-post.html" ref="tag:blogger.com,1999:blog-blogID.post-postID" source="http://www.blogger.com/feeds/posts/default/blogID" type="text/html"/> <author> <name>Blog Author name</name> <email>blog_author@gmail.com</email> <uri>http://www.blogger.com/profile/userID</uri> </author> <thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blogName.blogspot.com/2007/04/first-post.html' ref='tag:blogger.com,1999:blog-blogID.post-postID' source='http://blogName.blogspot.com/feeds/posts/default/postID' type='text/html' /> </entry> </feed>
Yorumları silme
Bir yorumu silmek için yorumun düzenleme URL'sine DELETE
isteği gönderin. Bu URL, yukarıdaki yorum feed'inde vurgulanmıştır.
Dışa aktarma biçimi
Blogger, kullanıcıların Blogger dışa aktarma dosyasını kullanarak bloglarını dışa aktarmasına ve içe aktarmasına olanak tanır. Bu dışa aktarma dosyası, bir blogun tüm yayınlarını ve yorumlarını içerir. Dışa aktarma dosyasının biçimi, yayın ve yorumları alma ile ilgili bölümlerde açıklanan Atom biçimiyle aynıdır. Bu dışa aktarma dosyası, yayın feed'inin ve yorum feed'inin içeriğini tek bir dokümanda birleştirir.
Dışa aktarma biçimini kullanarak blog verilerini dışa aktarmak veya içe aktarmak için blogun Ayarlar sayfasını ziyaret edebilirsiniz. Data API'yi kullanarak bir blogun dışa aktarma dosyasını almak için aşağıdaki URL'yi kullanın:
GET http://www.blogger.com/feeds/blogID/archive
Dışa aktarma dosyasını içe aktarmak için aşağıdaki URL'ye POST
isteği gönderin. İstek verileri olarak dışa aktarma dosyasının içeriğini, içerik türü olarak da application/atom+xml
'yi kullanın:
POST http://www.blogger.com/feeds/blogID/archive/full
Yukarıdaki URL'lerin hiçbiri sorgu parametrelerini desteklemez. Her iki istek de kimlik doğrulama bilgilerini içermelidir ve yalnızca blog yöneticileri bu feed URL'lerini kullanarak blogu içe/dışa aktarabilir.
Not: Kendi Blogger dışa aktarma dosyanızı oluşturuyorsanız şu anda yayın ve yorum girişlerinin sıralamasıyla ilgili bir kısıtlama vardır. Blogger dışa aktarma dosyasında önce tüm yayınlar, ardından tüm yorumlar listelenir. Yorum girişi, yorumun yer aldığı yayından sonra geldiği sürece yayın ve yorum girişlerinin birbirine karıştırılmasına izin verilir.
Blogger'ın dışa aktarma dosyasında Atom biçimini nasıl kullandığı hakkında daha fazla bilgi için Protokol referans kılavuzuna bakın.