Posty: lista
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Pobiera listę postów.
Wypróbuj lub zobacz przykład.
Autoryzacja jest wymagana, jeśli posty znajdują się na prywatnym blogu. Jeśli posty znajdują się na publicznym blogu, ta metoda może zostać wywołana bez autoryzacji.
Żądanie
Żądanie HTTP
GET https://www.googleapis.com/blogger/v3/blogs/blogId/posts
Parametry
Nazwa parametru |
Wartość |
Opis |
Parametry wymagane |
blogId |
string |
Identyfikator bloga, z którego mają być pobierane posty.
|
Parametry opcjonalne |
endDate |
datetime |
Najpóźniejsza data pobrania do pobrania, w formacie date-time z formatowaniem RFC 3339.
|
fetchBodies |
boolean |
Określa, czy treść postów ma być dołączana (domyślnie: true). Jeśli treść posta nie jest wymagana, ustaw wartość false (fałsz). Ułatwi to zminimalizowanie ruchu.
(Domyślnie: true )
|
fetchImages |
boolean |
Określa, czy dołączane są metadane adresu URL obrazu w każdym poście.
|
labels |
string |
Rozdzielona przecinkami lista etykiet do wyszukania.
|
maxResults |
unsigned integer |
Maksymalna liczba postów do pobrania.
|
orderBy |
string |
Kolejność sortowania została zastosowana do wyników.
Akceptowane wartości to:
- „
published ”: sortowanie według daty opublikowania posta
- „
updated ”: sortowanie według daty ostatniej aktualizacji posta
|
sortOption |
string |
UNAVAILABLE NOW
Do wyników zastosowano kierunek sortowania.
Akceptowane wartości to:
- „
descending ”: sortuje posty w kolejności malejącej (domyślnie).
- „
ascending ”: posortuj posty w kolejności rosnącej w czasie
|
pageToken |
string |
Token kontynuacji, jeśli żądanie jest kierowane na stronę.
|
startDate |
datetime |
Najwcześniejsza data posta do pobrania: date-time z formatowaniem RFC 3339.
|
status |
string |
Akceptowane wartości to:
- „
draft ”: wersje robocze postów
- „
live ”: opublikowane posty
- „
scheduled ”: posty zaplanowane do opublikowania w przyszłości.
|
view |
string |
Akceptowane wartości to:
- „
ADMIN ”: informacje na poziomie administratora
- „
AUTHOR ”: szczegółowe informacje na poziomie autora
- „
READER ”: szczegóły poziomu czytelnika
|
Treść żądania
Nie podawaj treści żądania przy użyciu tej metody.
Odpowiedź
Jeśli operacja się uda, metoda zwróci odpowiedź o następującej strukturze:
{
"kind": "blogger#postList",
"nextPageToken": string,
"items": [
posts Resource
]
}
Nazwa usługi |
Wartość |
Opis |
Uwagi |
kind |
string |
Rodzaj tego elementu. Zawsze blogger#postList . |
|
nextPageToken |
string |
Token podziału na strony pozwalający pobrać następną stronę, jeśli taka istnieje. |
|
items[] |
list |
Lista postów na tym blogu. |
|
Przykłady
Uwaga: dostępne dla tej metody przykłady kodu nie odzwierciedlają wszystkich obsługiwanych języków programowania. Listę obsługiwanych języków znajdziesz na stronie z bibliotekami klienta.
Java
korzysta z biblioteki klienta Java,
// The BlogId for the Blogger Buzz blog
String BUZZ_BLOG_ID = "2399953";
// Configure the Java API Client for Installed Native App
HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
JsonFactory JSON_FACTORY = new JacksonFactory();
// Configure the Installed App OAuth2 flow.
Credential credential = OAuth2Native.authorize(HTTP_TRANSPORT,
JSON_FACTORY, new LocalServerReceiver(),
Arrays.asList(BloggerScopes.BLOGGER));
// Construct the Blogger API access facade object.
Blogger blogger = Blogger.builder(HTTP_TRANSPORT, JSON_FACTORY)
.setApplicationName("Blogger-PostsList-Snippet/1.0")
.setHttpRequestInitializer(credential).build();
// The request action.
List postsListAction = blogger.posts().list(BUZZ_BLOG_ID);
// Restrict the result content to just the data we need.
postsListAction.setFields("items(author/displayName,content,published,title,url),nextPageToken");
// This step sends the request to the server.
PostList posts = postsListAction.execute();
// Now we can navigate the response.
int postCount = 0;
int pageCount = 0;
while (posts.getItems() != null && !posts.getItems().isEmpty()) {
for (Post post : posts.getItems()) {
System.out.println("Post #"+ ++postCount);
System.out.println("\tTitle: "+post.getTitle());
System.out.println("\tAuthor: "+post.getAuthor().getDisplayName());
System.out.println("\tPublished: "+post.getPublished());
System.out.println("\tURL: "+post.getUrl());
System.out.println("\tContent: "+post.getContent());
}
// Pagination logic
String pageToken = posts.getNextPageToken();
if (pageToken == null || ++pageCount >= 5) {
break;
}
System.out.println("-- Next page of posts");
postsListAction.setPageToken(pageToken);
posts = postsListAction.execute();
}
Wypróbuj
Użyj poniższego eksploratora interfejsów API, aby wywołać tę metodę na bieżących danych i wyświetlić odpowiedź.
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2024-08-21 UTC.
[null,null,["Ostatnia aktualizacja: 2024-08-21 UTC."],[[["\u003cp\u003eRetrieves a list of posts from a specified blog, requiring authorization for private blogs but not for public ones.\u003c/p\u003e\n"],["\u003cp\u003eAllows filtering of posts by date, labels, status, and other criteria using optional parameters.\u003c/p\u003e\n"],["\u003cp\u003eSupports pagination to retrieve large lists of posts in manageable chunks.\u003c/p\u003e\n"],["\u003cp\u003eProvides options to control the inclusion of post bodies and image metadata for traffic optimization.\u003c/p\u003e\n"],["\u003cp\u003eReturns a response containing post details like title, author, publication date, content, and URL.\u003c/p\u003e\n"]]],[],null,["# Posts: list\n\nRetrieves a list of posts.\n[Try it now](#try-it) or [see an example](#examples).\n\n[Authorization](/blogger/docs/3.0/using#auth) is required if the posts are on a blog that is private. If the posts are on a blog that is public, then this method can be called without authorization.\n\nRequest\n-------\n\n### HTTP request\n\n```\nGET https://www.googleapis.com/blogger/v3/blogs/blogId/posts\n```\n\n### Parameters\n\n| Parameter name | Value | Description |\n|----------------|--------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| **Required parameters** |||\n| `blogId` | `string` | The ID of the blog to fetch posts from. |\n| **Optional parameters** |||\n| `endDate` | `datetime` | Latest post date to fetch, a `date-time` with [RFC 3339](http://www.ietf.org/rfc/rfc3339.txt\"\") formatting. |\n| `fetchBodies` | `boolean` | Whether the body content of posts is included (default: true). This should be set to false when the post bodies are not required, to help minimize traffic. (Default: `true`) |\n| `fetchImages` | `boolean` | Whether image URL metadata for each post is included. |\n| `labels` | `string` | Comma-separated list of labels to search for. |\n| `maxResults` | `unsigned integer` | Maximum number of posts to fetch. |\n| `orderBy` | `string` | Sort order applied to results. \u003cbr /\u003e \u003cbr /\u003e Acceptable values are: - \"`published`\": Order by the date the post was published - \"`updated`\": Order by the date the post was last updated |\n| `sortOption` | `string` | `UNAVAILABLE NOW` \u003cbr /\u003e \u003cbr /\u003e Sort direction applied to results. \u003cbr /\u003e \u003cbr /\u003e Acceptable values are: - \"`descending`\": Sort posts in descending order in time (default) - \"`ascending`\": Sort posts in ascending order in time |\n| `pageToken` | `string` | Continuation token if the request is paged. |\n| `startDate` | `datetime` | Earliest post date to fetch, a `date-time` with [RFC 3339](http://www.ietf.org/rfc/rfc3339.txt) formatting. |\n| `status` | `string` | Acceptable values are: - \"`draft`\": Draft posts - \"`live`\": Published posts - \"`scheduled`\": Posts that are scheduled to publish in future. |\n| `view` | `string` | Acceptable values are: - \"`ADMIN`\": Admin level detail - \"`AUTHOR`\": Author level detail - \"`READER`\": Reader level detail |\n\n### Request body\n\nDo not supply a request body with this method.\n\nResponse\n--------\n\nIf successful, this method returns a response body with the following structure:\n\n```objective-c\n{\n \"kind\": \"blogger#postList\",\n \"nextPageToken\": string,\n \"items\": [\n posts Resource\n ]\n}\n```\n\n| Property name | Value | Description | Notes |\n|-----------------|----------|---------------------------------------------------------|-------|\n| `kind` | `string` | The kind of this entity. Always `blogger#postList`. | |\n| `nextPageToken` | `string` | Pagination token to fetch the next page, if one exists. | |\n| `items[]` | `list` | The list of posts for this blog. | |\n\nExamples\n--------\n\n**Note:** The code examples available for this method do not represent all supported programming languages (see the [client libraries page](/blogger/docs/3.0/libraries) for a list of supported languages). \n\n### Java\n\nUses the [Java client library](http://code.google.com/p/google-api-java-client/) \n\n```java\n// The BlogId for the Blogger Buzz blog\nString BUZZ_BLOG_ID = \"2399953\";\n\n// Configure the Java API Client for Installed Native App\nHttpTransport HTTP_TRANSPORT = new NetHttpTransport();\nJsonFactory JSON_FACTORY = new JacksonFactory();\n\n// Configure the Installed App OAuth2 flow.\nCredential credential = OAuth2Native.authorize(HTTP_TRANSPORT,\n\tJSON_FACTORY, new LocalServerReceiver(),\n\tArrays.asList(BloggerScopes.BLOGGER));\n\n// Construct the Blogger API access facade object.\nBlogger blogger = Blogger.builder(HTTP_TRANSPORT, JSON_FACTORY)\n\t.setApplicationName(\"Blogger-PostsList-Snippet/1.0\")\n\t.setHttpRequestInitializer(credential).build();\n\n// The request action.\nList postsListAction = blogger.posts().list(BUZZ_BLOG_ID);\n\n// Restrict the result content to just the data we need.\npostsListAction.setFields(\"items(author/displayName,content,published,title,url),nextPageToken\");\n\n// This step sends the request to the server.\nPostList posts = postsListAction.execute();\n\n// Now we can navigate the response.\nint postCount = 0;\nint pageCount = 0;\nwhile (posts.getItems() != null && !posts.getItems().isEmpty()) {\n\tfor (Post post : posts.getItems()) {\n\t\tSystem.out.println(\"Post #\"+ ++postCount);\n\t\tSystem.out.println(\"\\tTitle: \"+post.getTitle());\n\t\tSystem.out.println(\"\\tAuthor: \"+post.getAuthor().getDisplayName());\n\t\tSystem.out.println(\"\\tPublished: \"+post.getPublished());\n\t\tSystem.out.println(\"\\tURL: \"+post.getUrl());\n\t\tSystem.out.println(\"\\tContent: \"+post.getContent());\n\t}\n\n\t// Pagination logic\n\tString pageToken = posts.getNextPageToken();\n\tif (pageToken == null || ++pageCount \u003e= 5) {\n\t\tbreak;\n\t}\n\tSystem.out.println(\"-- Next page of posts\");\n\tpostsListAction.setPageToken(pageToken);\n\tposts = postsListAction.execute();\n}\n```\n\nTry it!\n-------\n\n\nUse the APIs Explorer below to call this method on live data and see the response."]]