Timeline: patch

需要授权

就地更新时间轴项。此方法支持补丁语义查看示例

请求

HTTP 请求

PATCH https://www.googleapis.com/mirror/v1/timeline/id

参数

参数名称 说明
路径参数
id string 时间轴项的 ID。

授权

此请求需要获得以下至少一个范围的授权(详细了解身份验证和授权)。

范围
https://www.googleapis.com/auth/glass.timeline
https://www.googleapis.com/auth/glass.location

请求正文

在请求正文中,根据补丁语义规则提供 Timeline 资源的相关部分。

响应

如果成功,此方法将在响应正文中返回时间轴资源

示例

注意:此方法的代码示例并未列出所有受支持的编程语言(请参阅客户端库页面,查看受支持的语言列表)。

Java

使用 Java 客户端库

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

import java.io.IOException;

public class MyClass {
  // ...

  /**
   * Update the text of an existing timeline item.
   * 
   * @param service Authorized Mirror service.
   * @param itemId ID of the timeline item to update.
   * @param newText New text content for the timeline item.
   * @return Updated timeline item on success, {@code null} otherwise.
   */
  public static TimelineItem patchTimelineItem(Mirror service, String itemId, String newText) {
    TimelineItem patchedTimelineItem = new TimelineItem();
    patchedTimelineItem.setText(newText);
    try {
      return service.timeline().patch(itemId, patchedTimelineItem).execute();
    } catch (IOException e) {
      System.err.println("An error occurred: " + e);
      return null;
    }
  }

  // ...
}

.NET

使用 .NET 客户端库

using System;

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

public class MyClass {
  // ...

  /// <summary>
  /// Update the text of an existing timeline item.
  /// </summary>
  /// <param name='service'>Authorized Mirror service.</param>
  /// <param name='itemId'>ID of the timeline item to update.</param>
  /// <param name='newText'>
  /// New text content for the timeline item.
  /// </param>
  /// <returns>
  /// Updated timeline item on success, null otherwise.
  /// </returns>
  public static TimelineItem PatchTimelineItem(MirrorService service,
      String itemId, String newText) {
    TimelineItem patchedTimelineItem = new TimelineItem() {
      Text = newText
    };
    try {
      return service.Timeline.Patch(patchedTimelineItem, itemId).Fetch();
    } catch (Exception e) {
      Console.WriteLine("An error occurred: " + e.Message);
      return null;
    }
  }

  // ...
}

PHP

使用 PHP 客户端库

/**
 * Update the text of an existing timeline item.
 *
 * @param Google_MirrorService $service Authorized Mirror service.
 * @param string $itemId ID of the timeline item to update.
 * @param string $newText New text content for the timeline item.
 * @return Google_TimelineItem Updated timeline item on success,
 *         null otherwise.
 */
function patchTimelineItem($service, $itemId, $newText) {
  try {
    $patchedTimelineItem = new Google_TimelineItem();
    $patchedTimelineItem->setText($text);
    return $service->timeline->patch($itemId, $patchedTimelineItem);
  } catch (Exception $e) {
    print 'An error occurred: ' . $e->getMessage();
    return null;
  }
}

Python

使用 Python 客户端库

from apiclient import errors
# ...

def patch_timeline_item(service, item_id, new_text):
  """Update the text of an existing timeline item.

  Args:
    service: Authorized Mirror service.
    item_id: ID of the timeline item to update.
    new_text: New text content for the timeline item.

  Returns:
    Updated timeline item on success, None otherwise.
  """
  patched_timeline_item = {'text': new_text}
  try:
    return service.timeline().patch(
        id=item_id, body=patched_timeline_item).execute()
  except errors.HttpError, error:
    print 'An error occurred: %s' % error
    return None

Ruby

使用 Ruby 客户端库

##
# Update the text of an existing Timeline Item.
#
# @param [Google::APIClient] client
#   Authorized client instance.
# @param [String] item_id
#   ID of the timeline item to update.
# @param [String] new_text
#   New text content for the timeline item.
# @return [Google::APIClient::Schema::Mirror::V1::TimelineItem]
#    Updated timeline item on success, nil otherwise.
def patch_timeline_item(client, item_id, new_text)
  mirror = client.discovered_api('mirror', 'v1')
  result = client.execute(
    :api_method => mirror.timeline.patch,
    :body_object => { 'text' => new_text },
    :parameters => { 'id' => item_id })
  if result.success?
    return result.data
  end
  puts "An error occurred: #{result.data['error']['message']}"
end

Go

使用 Go 客户端库

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

// PatchTimelineItem updates the text of an existing timeline item.
func PatchTimelineItem(g *mirror.Service, itemId string, newText string) (
	*mirror.TimelineItem, error) {
	t := &mirror.TimelineItem{Text: newText}
	r, err := g.Timeline.Patch(itemId, t).Do()
	if err != nil {
		fmt.Printf("An error occurred: %v\n", err)
		return nil, err
	}
	return r, nil
}

原始 HTTP

不使用客户端库。

PATCH /mirror/v1/timeline/timeline item id HTTP/1.1
Host: www.googleapis.com
Authorization: Bearer auth token
Content-Type: application/json
Content-Length: 26

{ "text": "Hello world" }