GCM 服务的 API 参考

用于 Chrome 浏览器的 Google 云消息服务向 Chrome 应用的用户发送消息,该服务处理了消息队列以及传递消息的各个方面。要使用这一服务,您必须同意 Google Cloud Messaging for Chrome API 服务条款

消息必须遵守这些约束:

  • 最大内容长度: 256 字节
  • 最大子通道数: 4
  • 每天最大 API 请求数: 10,000

Google APIs 客户端库

您可以使用这里定义的 REST 接口在您的应用程序中访问 Chrome 浏览器的 Google 云消息服务,我们还为几种可以用来访问该 API 的流行语言提供了 Google API 客户端库。有关更多信息,请参见 Google APIs 客户端库

insert 方法

gcm_for_chrome.messages.insert 方法向您的应用程序或扩展程序用户发送消息。

认证

向用户发送消息之前首先需要认证。在 Web 服务器应用程序中使用 OAuth 2.0 详细描述了这一步。

URL

用来获取对 GCM 服务的访问的 URL 为:https://accounts.google.com/o/auth2/auth

必选参数

查询字符串的必选参数为:

参数 描述
client_id 表示发送请求的应用程序或扩展程序,可以从 Google APIs 控制台获取,参数值必须完全匹配控制台中显示的客户端标识符。
client_secret Google APIs 控制台注册的过程中获取的客户端密钥。
refresh_token 与应用或扩展程序相关联的令牌,用于获取新的访问令牌。
grant_type refresh_tokenauthorization_code 值。

响应

认证响应包括:

字段 描述
access_token 访问用于 Chrome 浏览器的 GCM 服务所需的有效令牌。
expires_in 访问令牌过期的时间,以秒为单位。
token_type 返回的令牌类型:Bearer

消息请求

HTTP 请求

POST https://www.googleapis.com/gcm_for_chrome/v1/messages

请求正文

请在请求正文中提供:

参数 描述
Content-Type 请求正文的内容类型: application/json
Authorization Bearer HTTP 头信息包含访问令牌,例如: Bearer 1/fFBGRNJru1FQd44AzqT3Zg
channelId 应用或扩展程序的通道标识符,用来将消息推送回应用或扩展程序。
subchannelId 发送消息的子通道,只有 0~3 之间的值才有效。
payload 消息正文(最多 256 字节),不能包含个人识别信息。