Timeline.attachments: get

נדרשת הרשאה

אחזור קובץ מצורף של פריט בציר הזמן לפי מזהה פריט ומזהה קובץ מצורף. להצגת דוגמה

בקשה

בקשת HTTP

GET https://www.googleapis.com/mirror/v1/timeline/itemId/attachments/attachmentId

פרמטרים

שם הפרמטר ערך תיאור
פרמטרים של נתיב
attachmentId string המזהה של הקובץ המצורף.
itemId string המזהה של הפריט בציר הזמן שאליו שייך הקובץ המצורף.

אישור

הבקשה הזו מחייבת הרשאה עם ההיקף הבא (מידע נוסף על אימות והרשאה).

היקף
https://www.googleapis.com/auth/glass.timeline

גוף הבקשה

אל תספקו גוף בקשה בשיטה הזו.

תשובה

אם הפעולה בוצעה ללא שגיאות, השיטה הזו תחזיר משאב Timeline.attachments בגוף התגובה.

דוגמאות

הערה: דוגמאות הקוד הזמינות לשיטה זו לא מייצגות את כל שפות התכנות הנתמכות (רשימת השפות הנתמכות זמינה בדף של ספריות המשתמשים).

Java

משתמש בספריית הלקוח של Java.

import com.google.api.client.http.GenericUrl;
import com.google.api.client.http.HttpResponse;
import com.google.api.services.mirror.Mirror;
import com.google.api.services.mirror.model.Attachment;

import java.io.IOException;
import java.io.InputStream;

public class MyClass {
  // ...

  /**
   * Print an attachment's metadata.
   * 
   * @param service Authorized Mirror service.
   * @param itemId ID of the timeline item the attachment belongs to.
   * @param attachmentId ID of the attachment to print metadata for.
   */
  public static void printAttachmentMetadata(Mirror service, String itemId, String attachmentId) {
    try {
      Attachment attachment = service.timeline().attachments().get(itemId, attachmentId).execute();

      System.out.println("Attachment content type: " + attachment.getContentType());
      System.out.println("Attachment content URL: " + attachment.getContentUrl());
    } catch (IOException e) {
      System.out.println("An error occured: " + e);
    }
  }

  /**
   * Download a timeline items's attachment.
   * 
   * @param service Authorized Mirror service.
   * @param itemId ID of the timeline item to download the attachment for.
   * @param attachment Attachment to download content for.
   * @return The attachment content on success, {@code null} otherwise.
   */
  public static InputStream downloadAttachment(Mirror service, String itemId, Attachment attachment) {
    try {
      HttpResponse resp =
          service.getRequestFactory().buildGetRequest(new GenericUrl(attachment.getContentUrl()))
              .execute();
      return resp.getContent();
    } catch (IOException e) {
      // An error occurred.
      e.printStackTrace();
      return null;
    }
  }

  // ...
}

‎.NET

משתמש בספריית הלקוח של NET..

using System;
using Google.Apis.Mirror.v1;
using Google.Apis.Mirror.v1.Data;
using System.Net;
using System.IO;

public class MyClass {
  // ...

  /// <summary>
  /// Print an attachment's metadata.
  /// </summary>
  /// <param name="service">Authorized Mirror service.</param>
  /// <param name="itemId">ID of the timeline item the attachment belongs to.</param>
  /// <param name="attachmentId">ID of the attachment to print metadata for.</param>
  public static void PrintAttachmentMetadata(
      MirrorService service, String itemId, String attachmentId) {
    try {
      Attachment attachment = service.Timeline.Attachments.Get(itemId, attachmentId).Fetch();

      Console.WriteLine("Attachment content type: " + attachment.ContentType);
      Console.WriteLine("Attachment content URL: " + attachment.ContentUrl);
    } catch (Exception e) {
      Console.WriteLine("An error occurred: " + e.Message);
    }
  }
  
  /// <summary>
  /// Download a timeline items's attachment.
  /// </summary>
  /// <param name="service">Authorized Mirror service.</param>
  /// <param name="attachment">Attachment to download content for.</param>
  /// <returns>Attachment's content if successful, null otherwise.</returns>
  public static System.IO.Stream DownloadAttachment(
      MirrorService service, Attachment attachment) {
    try {
      HttpWebRequest request = (HttpWebRequest)WebRequest.Create(
        new Uri(attachment.ContentUrl));
      service.Authenticator.ApplyAuthenticationToRequest(request);
      HttpWebResponse response = (HttpWebResponse)request.GetResponse();
      if (response.StatusCode == HttpStatusCode.OK) {
        return response.GetResponseStream();
      } else {
        Console.WriteLine(
          "An error occurred: " + response.StatusDescription);
        return null;
      }
    } catch (Exception e) {
      Console.WriteLine("An error occurred: " + e.Message);
      return null;
    }
  }

  // ...
}

PHP

משתמש בספריית הלקוח של PHP.

/**
 * Print an attachment's metadata.
 *
 * @param Google_MirrorService $service Authorized Mirror service.
 * @param string $itemId ID of the timeline item the attachment belongs to.
 * @param string $attachmentId ID of the attachment to print metadata for.
 */
function printAttachmentMetadata($service, $itemId, $attachmentId) {
  try {
    $attachment = $service->timeline_attachments->get($itemId, $attachmentId);

    print "Attachment content type: " . $attachment->getContentType() . "\n";
    print "Attachment content URL: " . $attachment->getContentUrl() . "\n";
  } catch (Exception $e) {
    print "An error occurred: " . $e->getMessage();
  }
}

/**
 * Download an attachment's content.
 *
 * @param string $timelineId ID of the timeline item the attachment belongs to.
 * @param Google_Attachment $attachment Attachment's metadata.
 * @return string The attachment's content if successful, null otherwise.
 */
function downloadAttachment($itemId, $attachment) {
  $request = new Google_HttpRequest(
      $attachment->getContentUrl(), 'GET', null, null);
  $httpRequest = Google_Client::$io->authenticatedRequest($request);
  if ($httpRequest->getResponseHttpCode() == 200) {
    return $httpRequest->getResponseBody();
  } else {
    // An error occurred.
    return null;
  }
}

Python

משתמש בספריית הלקוח של Python.

from apiclient import errors
# ...

def print_attachment_metadata(service, item_id, attachment_id):
  """Print an attachment's metadata

  Args:
    service: Authorized Mirror service.
    item_id: ID of the timeline item the attachment belongs to.
    attachment_id: ID of the attachment to print metadata for.
  """
  try:
    attachment = service.timeline().attachments().get(
        itemId=item_id, attachmentId=attachment_id).execute()
    print 'Attachment content type: %s' % attachment['contentType']
    print 'Attachment content URL: %s' % attachment['contentUrl']
  except errors.HttpError, error:
    print 'An error occurred: %s' % error

def download_attachment(service, attachment):
  """Download an attachment's content

  Args:
    service: Authorized Mirror service.
    attachment: Attachment's metadata.
  Returns:
    Attachment's content if successful, None otherwise.
  """
  resp, content = service._http.request(attachment['contentUrl'])
  if resp.status == 200:
    return content
  else:
    print 'An error occurred: %s' % resp
    return None

Ruby

משתמש בספריית הלקוח של Ruby.

##
# Print an attachment's metadata.
#
# @param [Google::APIClient] client
#   Authorized client instance.
# @param [String] item_id
#   ID of the timeline item the attachment belongs to.
# @param [String] attachment_id
#   ID of the attachment to print metadata for.
# @return nil
def print_attachment_metadata(client, item_id, attachment_id)
  mirror = client.discovered_api('mirror', 'v1')
  result = client.execute(
    :api_method => mirror.timeline.attachments.get,
    :parameters => {
      'itemId' => item_id,
      'attachmentId' => attachment_id})
  if result.success?
    attachment = result.data
    puts "Attachment content type: #{attachment.content_type}"
    puts "Attachment content url: #{attachment.content_url}"
  else
    puts "An error occurred: #{result.data['error']['message']}"
  end
end

##
# Download an attachment's content
#
# @param [Google::APIClient] client
#   Authorized client instance
# @param [Google::APIClient::Schema::Mirror::V1::Attachment]
#   Attachment instance
# @return
#   Attachment's content if successful, nil otherwise
def download_attachment(client, attachment)
  result = client.execute(:uri => attachment.content_url)
  if result.success?
    return result.body
  else
    puts "An error occurred: #{result.data['error']['message']}"
  end
end

HTTP גולמי

לא נעשה שימוש בספריית לקוח.

GET /mirror/v1/timeline/timeline item id/attachments/attachment id HTTP/1.1
Host: www.googleapis.com
Authorization: Bearer auth token