ต้องมีการให้สิทธิ์
เรียกข้อมูลรายการในไทม์ไลน์สำหรับผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว ดูตัวอย่าง
ส่งคำขอ
คำขอ HTTP
GET https://www.googleapis.com/mirror/v1/timeline
พารามิเตอร์
ชื่อพารามิเตอร์ | ค่า | คำอธิบาย |
---|---|---|
พารามิเตอร์การค้นหาที่ไม่บังคับ | ||
bundleId |
string |
หากระบุ ระบบจะส่งคืนเฉพาะสินค้าที่มีรหัส BundleId ที่ระบุเท่านั้น |
includeDeleted |
boolean |
หากเป็น "จริง" ระบบจะส่งคืนระเบียน Tombstone ของรายการที่ลบไปแล้ว |
maxResults |
unsigned integer |
จำนวนรายการสูงสุดที่จะรวมไว้ในการตอบกลับซึ่งใช้สำหรับการแบ่งหน้า |
orderBy |
string |
ควบคุมลำดับการแสดงรายการในไทม์ไลน์
ค่าที่ยอมรับได้ มีดังนี้
|
pageToken |
string |
โทเค็นสำหรับหน้าผลการค้นหาที่จะแสดงผล |
pinnedOnly |
boolean |
หากจริง ระบบจะแสดงผลเฉพาะรายการที่ปักหมุดเท่านั้น |
sourceItemId |
string |
หากระบุ ระบบจะแสดงผลเฉพาะรายการที่มี sourceItemId ที่ระบุเท่านั้น |
การให้สิทธิ์
คำขอนี้ต้องได้รับการให้สิทธิ์ที่มีขอบเขตต่อไปนี้อย่างน้อย 1 ขอบเขต (อ่านเพิ่มเติมเกี่ยวกับการตรวจสอบสิทธิ์และการให้สิทธิ์)
ขอบเขต |
---|
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
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
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
/** * 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
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
## # 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