Locations: get

需要授權

根據 ID 取得單一位置。參閲範例

要求

HTTP 要求

GET https://www.googleapis.com/mirror/v1/locations/id

參數

參數名稱 說明
路徑參數
id string 地點的 ID,或最後已知位置的 latest

授權

此要求需要至少具備下列其中一個範圍的授權 (進一步瞭解驗證和授權)。

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

要求主體

請不要透過此方法提供請求主體。

回應

如果成功,此方法會在回應主體中傳回 Locations 資源

範例

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

Java

使用 Java 用戶端程式庫

import com.google.api.services.mirror.Mirror;
import com.google.api.services.mirror.model.Location;

import java.io.IOException;

public class MyClass {
  // ...

  /**
   * Print information about the latest known location for the current user.
   *
   * @param service Authorized Mirror service.
   */
  public static void printLatestLocation(Mirror service) {
    try {
      Location location = service.locations().get("latest").execute();

      System.out.println("Location recorded on: " + location.getTimestamp());
      System.out.println("  > Lat: " + location.getLatitude());
      System.out.println("  > Long: " + location.getLongitude());
      System.out.println("  > Accuracy: " + location.getAccuracy() + " meters");
    } 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 information about the latest known location for the current user.
  /// </summary>
  /// <param name='service'>
  /// Authorized Mirror service.
  /// </param>
  public static void PrintLatestLocation(MirrorService service) {
    try {
      Location location = service.Locations.Get("latest").Fetch();

      Console.WriteLine("Location recorded on: " + location.Timestamp);
      Console.WriteLine("  > Lat: " + location.Latitude);
      Console.WriteLine("  > Long: " + location.Longitude);
      Console.WriteLine("  > Accuracy: " + location.Accuracy + " meters");
    } catch (Exception e) {
      Console.WriteLine("An error occurred: " + e.Message);
    }
  }

  // ...
}

PHP

使用 PHP 用戶端程式庫

/**
 * Print information about the latest known location for the current user.
 *
 * @param Google_MirrorService $service Authorized Mirror service.
 */
function printLatestLocation($service) {
  try {
    $location = $service->locations->get('latest');

    print 'Location recorded on: ' . $location->getTimestamp() . "\n";
    print '  > Lat: ' . $location->getLatitude() . "\n";
    print '  > Long: ' . $location->getLongitude() . "\n";
    print '  > Accuracy: ' . $location->getAccuracy() . " meters\n";

  } catch (Exception $e) {
    print 'An error occurred: ' . $e->getMessage();
  }
}

Python

使用 Python 用戶端程式庫

from apiclient import errors
# ...

def print_latest_location(service):
  """Print information about the latest known location for the current user.

  Args:
    service: Authorized Mirror service.
  """
  try:
    location = service.locations().get(id='latest').execute()

    print 'Location recorded on: %s' % location.get('timestamp')
    print '  > Lat: %s' % location.get('latitude')
    print '  > Long: %s' % location.get('longitude')
    print '  > Accuracy: %s meters' % location.get('accuracy')
  except errors.HttpError, e:
    print 'An error occurred: %s' % e

Ruby

使用 Ruby 用戶端程式庫

##
# Print information about the latest known location for the current user.
#
# @param [Google::APIClient] client
#   Authorized client instance.
# @return nil
def print_latest_location(client)
  mirror = client.discovered_api('mirror', 'v1')
  result = client.execute(
    :api_method => mirror.locations.get,
    :parameters => { 'id' => 'latest' })
  if result.success?
    location = result.data
    puts "Location recorded on: #{location.timestamp}"
    puts "  > Lat: #{location.latitude}"
    puts "  > Long: #{location.longitude}"
    puts "  > Accuracy: #{location.accuracy} meters"
  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"
)

// PrintLatestLocation prints information about the latest known location for
// the current user.
func PrintLatestLocation(g *mirror.Service) error {
        l, err := g.Locations.Get("latest").Do()
        if err != nil {
                fmt.Printf("An error occurred: %v\n", err)
                return err
        }
        fmt.Printf("Location recorded on: %s\n", l.Timestamp)
        fmt.Printf("  > Lat: %s\n", s.Latitude)
        fmt.Printf("  > Long: %s\n", s.Longitude)
        fmt.Printf("  > Accuracy: %s meters\n", s.Accuracy)
        return nil
}

原始 HTTP

並未使用用戶端程式庫。

GET /mirror/v1/locations/latest HTTP/1.1
Authorization: Bearer auth token