Contacts: list

需要授權

擷取已驗證使用者的聯絡人清單。 請點選此處查看範例

要求

HTTP 要求

GET https://www.googleapis.com/mirror/v1/contacts

授權

此要求需要獲得下列範圍的授權 (進一步瞭解驗證和授權)。

範圍
https://www.googleapis.com/auth/glass.timeline

要求主體

請勿使用這個方法提供請求主體。

回應

如果成功的話,這個方法會傳回回應內文,其結構如下:

{
  "kind": "mirror#contacts",
  "items": [
    contacts Resource
  ]
}
屬性名稱 說明 附註
kind string 資源的類型。一律為 mirror#contacts
items[] list 聯絡人清單。

範例

注意:這個方法適用的程式語言眾多,我們只在此提供部分程式碼範例,完整的支援語言清單請參閱用戶端程式庫頁面

Java

使用 Java 用戶端程式庫

import com.google.api.services.mirror.Mirror;
import com.google.api.services.mirror.model.Contact;
import com.google.api.services.mirror.model.ContactsListResponse;

import java.io.IOException;

public class MyClass {
  // ...

  /**
   * Print all contacts for the current user.
   * 
   * @param service Authorized Mirror service.
   */
  public void printAllContacts(Mirror service) {
    try {
      ContactsListResponse contacts = service.contacts().list().execute();

      for (Contact contact : contacts.getItems()) {
        System.out.println("Contact ID: " + contact.getId());
        System.out.println("  > displayName: " + contact.getDisplayName());
        if (contact.getImageUrls() != null) {
          for (String imageUrl : contact.getImageUrls()) {
            System.out.println("  > imageUrl: " + imageUrl);
          }
        }
      }
    } catch (IOException e) {
      System.err.println("An error occurred: " + e);
    }
  }

  // ...
}

.NET

使用 .NET 用戶端程式庫

using System;

using Google.Apis.Mirror.v1;
using Google.Apis.Mirror.v1.Data;

public class MyClass {
  // ...

  /// <summary>
  /// Print all contacts for the current user.
  /// </summary>
  /// <param name='service'>Authorized Mirror service.</param>
  public static void PrintAllContacts(MirrorService service) {
    try {
      ContactsListResponse contacts =
          service.Contacts.List().Fetch();

      foreach (Contact contact in contacts.Items) {
        Console.WriteLine("Contact ID: " + contact.Id);
        Console.WriteLine("  > displayName: " + contact.DisplayName);
        if (contact.ImageUrls != null) {
          foreach (String imageUrl in contact.ImageUrls) {
            Console.WriteLine("  > imageUrl: " + imageUrl);
          }
        }
      }
    } catch (Exception e) {
      Console.WriteLine("An error occurred: " + e.Message);
    }
  }

  // ...
}

PHP

使用 PHP 用戶端程式庫

/**
 * Print all contacts for the current user.
 *
 * @param Google_MirrorService service Authorized Mirror service.
 */
function printAllContacts($service) {
  try {
    $contacts = $service->contacts->listContacts();

    foreach ($contacts->getItems() as $contact) {
      print 'Contact ID: ' . $contact->getId();
      print '  > displayName: ' . $contact->getDisplayName();
      if ($contact->getImageUrls() != null) {
        foreach ($contact->getImageUrls() as $imageUrl) {
          print '  > imageUrl: ' . $imageUrl;
        }
      }
    }
  } catch (Exception $e) {
    print 'An error occurred: ' . $e->getMessage();
    return null;
  }
}

Python

使用 Python 用戶端程式庫

from apiclient import errors
# ...

def print_all_contacts(service):
  """Print all contacts for the current user.

  Args:
    service: Authorized Mirror service.
  """
  try:
    contacts = service.contacts().list().execute()
    for contact in contacts.get('items', []):
      print 'Contact ID: %s' % contact.get('id')
      print '  > displayName: %s' % contact.get('displayName')
      for image_url in contact.get('imageUrls', []):
        print '  > imageUrl: %s' % image_url
  except errors.HttpError, error:
    print 'An error occurred: %s' % error

小茹

使用 Ruby 用戶端程式庫

##
# Print all contacts for the current user.
#
# @param [Google::APIClient] client
#   Authorized client instance.
# @return nil
def print_all_contacts(client)
  mirror = client.discovered_api('mirror', 'v1')
  result = client.execute(:api_method => mirror.contacts.list)
  if result.success?
    contacts = result.data
    contacts.items.each do |contact|
      puts "Contact ID: #{contact.id}"
      puts "  > displayName: #{contact.display_name}"
      contact['imageUrls'].each do |image_url|
        puts "  > imageUrl: #{image_url}"
      end
    end
  else
    puts "An error occurred: #{result.data['error']['message']}"
  end
end

Go

使用 Go 用戶端程式庫

import (
        "code.google.com/p/google-api-go-client/mirror/v1"
        "fmt"
)

// PrintAllContacts prints all contacts for the current user.
func PrintAllContacts(g *mirror.Service) error {
        s, err := g.Contacts.List().Do()
        if err != nil {
                fmt.Printf("An error occurred: %v\n", err)
                return err
        }
        for _, st := range s.Items {
                fmt.Printf("Contact ID: %s\n", st.Id)
                fmt.Printf("  > displayName: %s\n", st.DisplayName)
                for _, i := range st.ImageUrls {
                    fmt.Printf("  > imageUrl: %s\n", i)
                }
        }
        return nil
}

原始 HTTP

不使用用戶端程式庫。

GET /mirror/v1/contacts HTTP/1.1
Authorization: Bearer auth token