Ważne: to jest stara wersja tej strony. Aby uzyskać najnowszą wersję, użyj linków na pasku nawigacyjnym po lewej stronie.
Interfejs API danych Bloggera pozwala aplikacjom klienckim wyświetlać i aktualizować treści z Bloggera w postaci kanałów interfejsu API danych Google.
Aplikacja kliencka Bloggera może używać interfejsu API danych Bloggera do tworzenia nowych postów na blogu, edytowania i usuwania istniejących postów, a także wysyłania zapytań o posty spełniające określone kryteria.
Poza omówieniem możliwości interfejsu API danych Bloggera, dokument ten przedstawia przykłady podstawowych interakcji interfejsu Data API z wykorzystaniem nieprzetworzonego kodu XML i protokołu HTTP. Z tego dokumentu dowiesz się więcej o interakcji z interfejsem API za pomocą bibliotek klienta, zapoznając się z sekcjami poświęconymi programowaniu w tym przewodniku.
Spis treści
Odbiorcy
Ten dokument jest przeznaczony dla programistów, którzy chcą pisać aplikacje klienckie wchodzące w interakcje z Bloggerem za pomocą kodu XML i HTTP.
Zakładamy w nim, że rozumiesz ogólne koncepcje protokołu interfejsów API danych Google.
Jeśli używasz systemu UNIX i chcesz wypróbować przykłady z tego dokumentu bez konieczności pisania kodu, przydatne mogą być narzędzia wiersza poleceń UNIX curl
lub wget
. Więcej informacji znajdziesz na stronach z instrukcjami tych narzędzi.
Informacje referencyjne na temat interfejsu API danych Bloggera znajdziesz w Przewodniku po protokole.
Pierwsze kroki
Tworzenie konta w Bloggerze
Aby przeprowadzić testy, możesz założyć konto Bloggera. Blogger korzysta z kont Google, więc jeśli już masz konto Google, nie musisz nic robić.
Uwierzytelnianie w usłudze Blogger
Interfejs API danych Bloggera umożliwia dostęp zarówno do publicznych, jak i prywatnych kanałów. Publiczne kanały nie wymagają uwierzytelniania, ale są tylko do odczytu. Jeśli chcesz zmodyfikować blogi, Twój klient musi się uwierzytelnić przed wysłaniem prośby o dostęp do kanałów prywatnych. Może uwierzytelniać się z użyciem 2 sposobów: uwierzytelniania serwera proxy AuthSub lub uwierzytelniania ClientLogin przy użyciu nazwy użytkownika i hasła.
Więcej ogólnych informacji o uwierzytelnianiu za pomocą interfejsów API danych Google znajdziesz w dokumentacji uwierzytelniania.
Większość przykładów w kolejnych sekcjach tego dokumentu zakłada, że stosujesz odpowiednie uwierzytelnianie.
Uwierzytelnianie serwera proxy AuthSub
Uwierzytelnianie serwera proxy AuthSub jest używane przez aplikacje internetowe, które muszą uwierzytelniać użytkowników na kontach Google. Operator witryny i kod klienta nie mają dostępu do nazwy użytkownika i hasła Bloggera. Zamiast tego klient uzyskuje specjalne tokeny AuthSub, które umożliwiają klientowi działanie w imieniu konkretnego użytkownika. Szczegółowe informacje znajdziesz w dokumentacji AuthSub.
Gdy użytkownik po raz pierwszy odwiedza Twoją aplikację, nie jest jeszcze uwierzytelniony. W takim przypadku musisz podać informacje i link przekierowujący użytkownika do strony Google, aby uwierzytelnić prośbę o dostęp do jego blogów.
W adresie URL AuthSubRequest znajdują się następujące parametry zapytania:
- dalej
- Adres URL strony, na którą Google ma przekierować użytkownika po uwierzytelnieniu.
- zakres
- Wskazuje, że aplikacja prosi o token dostępu do kanałów Bloggera. Ciąg zakresu, którego chcesz użyć, to
http://www.blogger.com/feeds/
(oczywiście zakodowany pod adresem URL). - Bezpieczny
- Wskazuje, czy klient prosi o bezpieczny token.
- sesja
- Wskazuje, czy zwrócony token można wymienić na token wielokrotnego użytku (sesyjny).
Adres URL żądania AuthSubRequest może wyglądać tak:
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
Użytkownik klika link do witryny Google i uwierzytelnia się na swoim koncie Google.
Gdy użytkownik się uwierzytelni, system AuthSub przekieruje go na adres URL podany w parametrze zapytania next
adresu URL AuthSubRequest. System AuthSub dołącza do tego adresu URL token uwierzytelniania jako wartość parametru zapytania token
. Na przykład:
http://www.example.com/welcome.html?token=yourAuthToken
Ta wartość tokena reprezentuje jednorazowy token AuthSub. W tym przykładzie, ponieważ określono session=1
, token sesji można wymienić na token sesji AuthSub, wywołując usługę AuthSubSessionToken
z tokenem jednorazowego użytku w nagłówku autoryzacji w następujący sposób:
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
Odpowiedź usługi AuthSubSessionToken zawiera nagłówek Token
zawierający token sesji oraz nagłówek Expiration
, który wskazuje, jak długo token pozostaje ważny.
Twoja aplikacja może następnie używać wartości tokena sesji w nagłówku Authorization
podczas kolejnych interakcji z Bloggerem.
Oto przykład żądania HTTP zawierającego niezabezpieczony token, które można wysłać do Bloggera:
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
Uwierzytelnianie za pomocą nazwy użytkownika i hasła ClientLogin
Użyj uwierzytelniania ClientLogin, jeśli klient jest samodzielnym, „zainstalowanym” klientem „zainstalowanym” przez pojedynczego użytkownika (np. aplikacją komputerową). Aby poprosić o token uwierzytelniania przy użyciu mechanizmu ClientLogin, wyślij żądanie POST
na ten adres URL:
https://www.google.com/accounts/ClientLogin
Treść POST
powinna zawierać zestaw parametrów zapytania, które wyglądają jak parametry przekazywane przez formularz HTML o typie treści application/x-www-form-urlencoded
. Są to:
- Wyślij e-mailem
- Adres e-mail użytkownika.
- Hasło
- Hasło użytkownika.
- usługa
- Nazwa usługi Blogger to
blogger
. Listę innych nazw usług znajdziesz na liście nazw usług. - accountType
- Gdy używasz interfejsu Blogger API, zawsze powinna być ustawiona wartość
GOOGLE
. Jeśli nie ustawisz tego parametru, dostęp do niego będą mieli osoby, które mają też konto G Suite. - source
- Identyfikuje aplikację kliencką. Powinien mieć postać companyName-applicationName-versionID. W przykładach jest to
exampleCo-exampleApp-1
.
Więcej informacji o parametrach znajdziesz w dokumencie Uwierzytelnianie zainstalowanych aplikacji.
Jeśli żądanie uwierzytelnienia nie powiedzie się, serwer zwraca kod stanu HTTP 403 Forbidden
.
Jeśli operacja się uda, serwer zwróci kod stanu HTTP 200 OK
oraz 3 długie kody alfanumeryczne w treści odpowiedzi: SID, LSID i Auth. Wartość Auth to token autoryzacji, który wysyłasz do Bloggera z każdym kolejnym żądaniem, dlatego zachowaj kopię tej wartości. Możesz ignorować wartości SID i LSID.
Ponieważ wszystkie żądania wysyłane do prywatnych kanałów wymagają uwierzytelniania, nagłówek autoryzacji musisz ustawić we wszystkich kolejnych interakcjach z Bloggerem, używając tego formatu:
Authorization: GoogleLogin auth=yourAuthToken
Gdzie yourAuthToken
to ciąg uwierzytelniania zwrócony przez żądanie ClientLogin.
Więcej informacji o uwierzytelnianiu ClientLogin, w tym przykładowe żądania i odpowiedzi, znajdziesz w dokumentacji uwierzytelniania zainstalowanych aplikacji.
Uwaga: używaj tego samego tokena do wszystkich żądań w danej sesji. Nie pobieraj nowego tokena dla każdego żądania Bloggera.
Uwaga: zgodnie z opisem w dokumentacji ClientLogin może się zdarzyć, że żądanie uwierzytelnienia się nie powiedzie i zostanie wykonane zadanie CAPTCHA. Jeśli Google ma uruchamiać i obsługiwać test CAPTCHA, wyślij użytkownikowi adres https://www.google.com/accounts/DisplayUnlockCaptcha?service=blogger
(a nie adres URL obsługi CAPTCHA podany w dokumentacji ClientLogin).
Pobieranie listy blogów
Interfejs API danych Bloggera to kanał z listą blogów konkretnego użytkownika. Kanał ten jest nazywany „metakanałem”.
Wyślij żądanie HTTP GET
na ten adres URL, aby pobrać listę blogów:
http://www.blogger.com/feeds/userID/blogs
Uwaga: identyfikator użytkownika możesz też zastąpić wartością default
, aby poinformować Bloggera, że ma zwrócić listę blogów użytkownika, którego dane logowania zostały powiązane z żądaniem.
Wpis w metatagach może wyglądać tak:
<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>
Informacje o znaczeniu każdego z tych elementów znajdziesz w dokumentacji protokołu Google Data API lub w specyfikacji Atom 1.0.
Jeśli z jakiegoś powodu żądanie się nie powiedzie, Blogger może zwrócić inny kod stanu. Więcej informacji o kodach stanu HTTP znajdziesz też w opisie protokołu interfejsów API danych Google (w języku angielskim).
Tworzenie postów
Interfejs API danych Bloggera umożliwia tworzenie i publikowanie nowych wpisów na blogu, a także tworzenie wersji roboczych wpisów.
Publikowanie posta na blogu
Po uwierzytelnieniu możesz publikować nowe wpisy na blogu.
Najpierw utwórz reprezentację XML posta do opublikowania. Ten kod XML musi mieć formę elementu <entry>
Atom, która może wyglądać tak:
<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>
Uwaga: ustawianie niestandardowego autora postów nie jest obecnie obsługiwane. Wszystkie nowe posty będą wyświetlane tak, jakby zostały utworzone przez aktualnie uwierzytelnionego użytkownika.
Aby opublikować ten wpis, wyślij go na adres URL posta na blogu w następujący sposób. Najpierw umieść element Atom <entry>
w treści nowego żądania POST
, używając typu treści application/atom+xml
. Następnie odszukaj w metatagu adres URL posta na blogu, znajdując element <link>
, w którym atrybut rel
kończy się na #post
. Adres URL posta na blogu jest podany jako atrybut href
tego elementu, który ma następujący format:
http://www.blogger.com/feeds/blogID/posts/default
Uwaga: ten adres URL jest taki sam jak adres URL w tagu <link rel="service.post">
, który pojawia się w sekcji <head>
w czytelnej dla człowieka wersji bloga.
Blogger tworzy posta na blogu na podstawie wysłanego przez Ciebie wpisu, a następnie zwraca kod stanu HTTP 201 CREATED
oraz kopię nowego posta w formie elementu <entry>
. Zwrócony wpis jest taki sam jak ten, który został przez Ciebie wysłany, ale zawiera też różne elementy dodane przez Bloggera, np. element <id>
.
Jeśli z jakiegoś powodu żądanie się nie powiedzie, Blogger może zwrócić inny kod stanu. Informacje o kodach stanu znajdziesz w dokumentacji protokołu Google Data API.
Tworzenie wersji roboczej posta na blogu
Wersje robocze postów tworzy się tak samo jak posty publiczne, z tym że do wpisu jest dodawany element <app:control>
, który wskazuje, że posta nie powinien (jeszcze) zostać opublikowany.
Ten element <app:control>
powinien zawierać pojedynczy element <app:draft>
jako element podrzędny:
<app:control xmlns:app='http://purl.org/atom/app#'> <app:draft>yes</app:draft> </app:control>
Aby post został rozpoznany jako wersja robocza, dane zawarte w elemencie <app:draft>
muszą mieć ciąg yes.
Możesz przekształcić istniejącą wersję roboczą posta na blogu w opublikowanego posta, pobierając jego wersję roboczą, ustawiając dane elementu <app:draft>
jako ciąg znaków no, a następnie aktualizując posta. Pobieranie i aktualizowanie postów
omówimy w następnych dwóch sekcjach.
Uwaga: więcej informacji o protokole AtomPublishing Protocol, w tym o przestrzeniach nazw <app:control>
i <app:draft>
, zawiera dokument RFC 5023.
Pobieram posty
W poniższych sekcjach opisano, jak pobrać listę postów na blogu z parametrami zapytania i bez nich.
Możesz wysyłać zapytania dotyczące publicznego kanału Bloggera bez uwierzytelniania. Dzięki temu nie musisz ustawiać parametru autoryzacji podczas pobierania postów z bloga publicznego.
Pobieranie wszystkich postów z bloga
Aby pobrać posty użytkownika, wyślij żądanie HTTP GET
na adres URL kanału bloga. Następnie Blogger zwraca kanał z odpowiednimi
wpisami na blogu. Aby np. uzyskać listę postów na blogu liz@gmail.com, wyślij do Bloggera to żądanie HTTP (oczywiście z odpowiednią wartością zamiast blogID
):
GET http://www.blogger.com/feeds/blogID/posts/default
Blogger zwraca kod stanu HTTP 200 OK
i standardowy kanał Atom 1.0 zawierający posty z bloga.
Poniżej znajduje się przykład kanału bloga z jednym postem. Zwróć uwagę, że w tym przykładzie zmieniliśmy trochę, aby był bardziej czytelny dla użytkowników. W szczególności prawdziwy kanał Bloggera zawiera rzeczywiste identyfikatory i adresy URL.
<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>
Pobieranie postów przy użyciu parametrów zapytania
Interfejs API danych Bloggera umożliwia żądanie zbioru wpisów spełniających określone kryteria, na przykład żądania postów na blogu opublikowanych lub zaktualizowanych w wybranym zakresie dat.
Aby np. wysłać zapytanie dotyczące zakresu dat, dodaj do adresu URL żądania parametry published-min
oraz published-max
. Aby pobrać wszystkie wpisy na blogu utworzone między 16 a 24 marca 2008 roku, wyślij żądanie HTTP na adres URL kanału bloga:
GET http://www.blogger.com/feeds/blogID/posts/default?published-min=2008-03-16T00:00:00&published-max=2008-03-24T23:59:59
Gdy wyślesz żądanie GET
, Blogger zwróci kod stanu HTTP 200 OK
i kanał z wszystkimi postami utworzonymi w wybranym przez Ciebie zakresie dat.
Za pomocą parametrów updated-min
i updated-max
można też zaktualizować wszystkie wpisy na blogu w określonym zakresie. Pamiętaj jednak, że te parametry są ignorowane, chyba że parametr orderby
ma też wartość updated
.
Interfejs API danych Bloggera obsługuje następujące parametry zapytania:
- alternatywnych
- Typ pliku danych do zwrócenia, na przykład
atom
(domyślny) lubrss
. - /category
- Określa kategorie (nazywane też etykietami), aby filtrować wyniki z pliku danych. Na przykład funkcja
http://www.blogger.com/feeds/blogID/posts/default/-/Fritz/Laurie
zwraca wpisy z etykietamiFritz
iLaurie
. - max-results
- Maksymalna liczba wpisów do zwrócenia.
- Orderby
- Kolejność zwracania wpisów, na przykład
lastmodified
(domyślna),starttime
lubupdated
. - liczba publikacji: minimalna, liczba publikacji – maks.
- Granice dat publikacji wpisów.
- start-index
- Indeks od 1 pierwszego wyniku do pobrania (na potrzeby stronicowania).
- minimalna aktualizacja, maks. liczba aktualizacji
- Granice dat aktualizacji wpisów. Te parametry zapytania są ignorowane, chyba że parametr
orderby
ma wartośćupdated
.
Więcej informacji o parametrach zapytań znajdziesz w Przewodniku po interfejsie API danych Bloggera i w Przewodniku po interfejsach API danych Google.
Aktualizuję posty
Aby zaktualizować istniejącego posta na blogu, musisz najpierw pobrać wpis, który chcesz zaktualizować, następnie zmodyfikować go, a następnie wysłać żądanie PUT
ze zaktualizowanym wpisem w treści wiadomości do adresu URL edycji posta. Upewnij się, że wartość <id>
we wpisie PUT
dokładnie odpowiada wartości <id>
istniejącego wpisu.
Adres URL edycji jest wyróżniony w tym wpisie:
<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>
WAŻNE: aby zapewnić zgodność dalej, pamiętaj, aby podczas PUT
aktualizacji zaktualizowanego wpisu zachowywać cały kod XML, który był w momencie pobierania wpisu z Bloggera. W przeciwnym razie, gdy wdrożymy nowe elementy i uwzględnimy w pliku danych elementy <new-awesome-feature>
, klient nie zwróci ich, a użytkownicy coś pominą. Biblioteki klienta interfejsu Google Data API prawidłowo obsługują tę funkcję, więc jeśli używasz jednej z bibliotek, nie musisz nic robić.
Uwaga: obecnie nie można zmieniać danych o autorze powiązanych z postami.
Wskazówka dotycząca rozwiązywania problemów: niektóre zapory sieciowe blokują wiadomości HTTP PUT
. Aby obejść ten problem, możesz dodać do żądania POST
nagłówek X-HTTP-Method-Override: PUT
.
Szczegółowe informacje znajdziesz w dokumencie z podstawowymi informacjami o protokole interfejsu Google Data API.
Usuwam posty
Aby usunąć posta, wyślij prośbę o DELETE
na adres URL jego edycji.
Jest to ten sam adres URL, który służy do aktualizowania postów.
Wskazówka dotycząca rozwiązywania problemów: niektóre zapory sieciowe blokują wiadomości HTTP DELETE
. Aby obejść ten problem, możesz dodać do żądania POST
nagłówek X-HTTP-Method-Override: DELETE
. Szczegółowe informacje znajdziesz w dokumencie z podstawowymi informacjami o protokole interfejsu Google Data API.
Komentarze
Interfejs API danych Bloggera umożliwia tworzenie, pobieranie i usuwanie komentarzy. Aktualizowanie komentarzy nie jest obsługiwane (nie jest też dostępna w interfejsie internetowym).
Tworzenie komentarzy
Aby opublikować komentarz, utwórz element <entry>
Atom w ten sposób:
<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>
Aby opublikować ten komentarz, umieść element Atom <entry>
w treści nowego żądania POST
, używając typu treści application/atom+xml
. Następnie wyślij żądanie POST
na odpowiedni adres URL Bloggera:
POST http://www.blogger.com/feeds/blogID/postID/comments/default
Uwaga: obecnie możesz publikować komentarze tylko na blogu należącym do uwierzytelnionego użytkownika.
Uwaga: ustawianie niestandardowego autora komentarzy nie jest obecnie obsługiwane. Wszystkie nowe komentarze będą wyświetlane tak, jakby zostały utworzone przez aktualnie uwierzytelnionego użytkownika.
Pobieranie komentarzy
Aby pobrać komentarze do konkretnego posta, wyślij GET
na adres URL kanału komentarzy do tego posta:
GET http://www.blogger.com/feeds/blogID/postID/comments/default
Możesz też wyświetlić komentarze do wszystkich postów, używając adresu URL kanału komentarzy bloga:
GET http://www.blogger.com/feeds/blogID/comments/default
Żądania te zwracają kanał komentarzy podobny do tego:
<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>
Usuwanie komentarzy
Aby usunąć komentarz, wyślij prośbę DELETE
na adres URL do edycji komentarza. Ten adres URL jest wyróżniony w sekcji komentarzy powyżej.
Format eksportu
Blogger umożliwia użytkownikom eksportowanie i importowanie blogów za pomocą pliku eksportu Bloggera. Ten plik eksportu zawiera wszystkie posty i komentarze na blogu. Plik eksportu ma dokładnie taki sam format Atom, jaki opisano w sekcjach dotyczących pobierania postów i komentarzy. Będzie on zawierał jedną treść pliku danych z komentarzami oraz zawartość pliku z komentarzami.
Aby wyeksportować lub zaimportować dane bloga za pomocą formatu eksportu, otwórz stronę Ustawienia bloga. Aby pobrać plik eksportu bloga za pomocą interfejsu Data API, użyj tego adresu URL:
GET http://www.blogger.com/feeds/blogID/archive
Aby zaimportować plik eksportu, utwórz żądanie POST
na poniższy adres URL z zawartością pliku eksportu jako danymi żądania i application/atom+xml
jako typem treści:
POST http://www.blogger.com/feeds/blogID/archive/full
Żaden z podanych wyżej adresów URL nie obsługuje parametrów zapytania. Oba żądania muszą też zawierać informacje dotyczące uwierzytelniania i tylko administratorzy bloga mogą importować i eksportować bloga przy użyciu tych adresów URL kanałów.
Uwaga: jeśli tworzysz własny plik eksportu Bloggera, obecnie obowiązuje jedno ograniczenie dotyczące kolejności wpisów i komentarzy. W pliku eksportu Bloggera najpierw zostaną wymienione wszystkie posty, a później wszystkie komentarze. Łączenie komentarzy z postami i komentarzami jest dozwolone, pod warunkiem że dany komentarz pojawia się po nim.
Więcej informacji o tym, jak Blogger korzysta z formatu Atom w pliku eksportu, znajdziesz w przewodniku po protokole.