يتطلّب تفويضًا
لاسترداد قائمة بعناصر المخطط الزمني للمستخدم الذي تمت مصادقته. اطّلِع على مثال.
الطلب
طلب HTTP
GET https://www.googleapis.com/mirror/v1/timeline
المعلمات
اسم المعلَمة | القيمة | الوصف |
---|---|---|
مَعلمات طلب البحث الاختيارية | ||
bundleId |
string |
وفي حال توفّره، سيتم فقط عرض العناصر التي تتضمّن رقم تعريف الحزمة المحدّد. |
includeDeleted |
boolean |
إذا كانت القيمة true، سيتم عرض سجلّات Tombstone للعناصر المحذوفة. |
maxResults |
unsigned integer |
الحد الأقصى لعدد العناصر المراد تضمينها في الرد، يتم استخدامه للترقيم. |
orderBy |
string |
تتحكّم هذه السياسة في ترتيب عرض عناصر المخطّط الزمني.
في ما يلي القيم المقبولة:
|
pageToken |
string |
رمز مميز لصفحة النتائج المطلوب عرضها. |
pinnedOnly |
boolean |
إذا كانت القيمة هي true، سيتم عرض العناصر المثبَّتة فقط. |
sourceItemId |
string |
وفي حال توفّره، سيتم فقط عرض العناصر التي تتضمّن sourceItemId المحدّد. |
التفويض
يتطلب هذا الطلب تفويضًا باستخدام نطاق واحد على الأقل من النطاقات التالية (مزيد من المعلومات عن المصادقة والتفويض).
النطاق |
---|
https://www.googleapis.com/auth/glass.timeline |
https://www.googleapis.com/auth/glass.location |
نص الطلب
لا تقدِّم نص طلب باستخدام هذه الطريقة.
الرد
في حال نجاح هذه الطريقة، سيتم عرض نص استجابة بالبنية التالية:
{ "kind": "mirror#timeline", "nextPageToken": string, "items": [ timeline Resource ] }
اسم الموقع | القيمة | الوصف | ملاحظات |
---|---|---|---|
kind |
string |
نوع المورد. دائمًا ما تكون هذه هي mirror#timeline . |
|
nextPageToken |
string |
الرمز المميز للصفحة التالية. عليك تقديم هذه المَعلمة كمَعلمة pageToken في الطلب لاسترداد الصفحة التالية من النتائج. |
|
items[] |
list |
العناصر المتوفرة في المخطط الزمني. |
أمثلة
ملاحظة: إنّ الأمثلة المرتبطة بالرموز والمتوفرة لهذه الطريقة لا تمثّل كل لغات البرمجة المتوافقة (يُرجى مراجعة صفحة مكتبات البرامج للاطّلاع على قائمة باللغات المتوافقة).
Java
تستخدم مكتبة برامج Java.
import com.google.api.services.mirror.Mirror; import com.google.api.services.mirror.Mirror.Timeline; import com.google.api.services.mirror.model.TimelineItem; import com.google.api.services.mirror.model.TimelineListResponse; import java.io.IOException; import java.util.ArrayList; import java.util.List; public class MyClass { // ... /** * Retrieve all timeline items for the current user. * * @param service Authorized Mirror service. * @return Collection of timeline items on success, {@code null} otherwise. */ public static List<TimelineItem> retrieveAllTimelineItems(Mirror service) { List<TimelineItem> result = new ArrayList<TimelineItem>(); try { Timeline.List request = service.timeline().list(); do { TimelineListResponse timelineItems = request.execute(); if (timelineItems.getItems() != null && timelineItems.getItems().length() > 0) { result.addAll(timelineItems.getItems()); request.setPageToken(timelineItems.getNextPageToken()); } else { break; } } while (request.getPageToken() != null && request.getPageToken().length() > 0); } catch (IOException e) { System.err.println("An error occurred: " + e); return null; } return result; } // ... }
NET.
لاستخدام مكتبة برامج .NET
using System; using System.Collections.Generic; using Google.Apis.Mirror.v1; using Google.Apis.Mirror.v1.Data; public class MyClass { // ... /// <summary> /// Retrieve all timeline items for the current user. /// </summary> /// <param name='service'>Authorized Mirror service.</param> /// <returns> /// List of timeline items on success, null otherwise. /// </returns> public static List<TimelineItem> RetrieveAllTimelineItems( MirrorService service) { List<TimelineItem> result = new List<TimelineItem>(); try { TimelineResource.ListRequest request = service.Timeline.List(); do { TimelineListResponse timelineItems = request.Fetch(); if (timelineItems.Items != null && timelineItems.Items.Length > 0) { result.AddRange(timelineItems.Items); request.PageToken = timelineItems.NextPageToken; } else { break; } } while (!String.IsNullOrEmpty(request.PageToken)); } catch (Exception e) { Console.WriteLine("An error occurred: " + e.Message); return null; } return result; } // ... }
PHP
لاستخدام مكتبة برامج PHP
/** * Retrieve all timeline items for the current user. * * @param Google_MirrorService $service Authorized Mirror service. * @return Array List of Google_TimelineItem resources on success, * null otherwise. */ function retrieveAllTimelineItems($service) { try { $result = array(); $pageToken = null; do { $optParams = array(); if ($pageToken) { $optParams['pageToken'] = $pageToken; } $timelineItems = $service->timeline->listTimeline($optParams); if (!empty(timelineItems->getItems()) { $result = array_merge($result, $timelineItems->getItems()); $pageToken = $timelineItems->getNextPageToken(); } else { break; } } while ($pageToken); return $result; } catch (Exception $e) { print 'An error occurred: ' . $e->getMessage(); return null; } }
Python
تستخدم مكتبة برامج Python.
from apiclient import errors # ... def retrieve_all_timeline_tems(service): """Retrieve all timeline items for the current user. Args: service: Authorized Mirror service. Returns: Collection of timeline items on success, None otherwise. """ result = [] request = service.timeline().list() while request: try: timeline_items = request.execute() items = timeline_items.get('items', []) if items: result.extend(timeline_items.get('items', [])) request = service.timeline().list_next(request, timeline_items) else: # No more items to retrieve. break except errors.HttpError, error: print 'An error occurred: %s' % error break return result
Ruby
تستخدم مكتبة برامج Ruby.
## # Retrieve all Timeline Items for the current user. # # @param [Google::APIClient] client # Authorized client instance. # @return [Array] # List of timeline items. def retrieve_all_timeline_items(client) mirror = client.discovered_api('mirror', 'v1') result = Array.new page_token = nil begin parameters = {} if page_token.to_s != '' parameters['pageToken'] = page_token end api_result = client.execute( :api_method => mirror.timeline.list, :parameters => parameters) if api_result.success? timeline_items = api_result.data if timeline_items.items.empty? page_token = nil else result.concat(timeline_items.items) page_token = timeline_items.next_page_token end else puts "An error occurred: #{result.data['error']['message']}" page_token = nil end end while page_token.to_s != '' result end
البدء
تستخدم مكتبة برامج Go.
import ( "code.google.com/p/google-api-go-client/mirror/v1" "fmt" ) // RetrieveAllTimelineItems retrieves all timeline items for the current user. func RetrieveAllTimelineItems(g *mirror.Service) ([]*mirror.TimelineItem, error) { r := []*mirror.TimelineItem{} req := g.Timeline.List() for req != nil { t, err := req.Do() if err != nil { fmt.Printf("An error occurred: %v\n", err) return nil, err } if t.Items != nil && len(t.Items) > 0 { r = append(r, t.Items...) req.PageToken(t.NextPageToken) } else { req = nil } } return r, nil }
HTTP غير مُنسّق
لا يستخدم مكتبة برامج.
GET /mirror/v1/timeline HTTP/1.1 Host: www.googleapis.com Authorization: Bearer auth token