概览

借助 Google Wallet Passs API,合作伙伴可轻松保存 旋转 条形码发送到 Google 钱包。这些条形码仅在短期内有效 提供额外的安全保障,以降低条形码截屏的风险。通过 设备上按照 RFC 6238(由提供 密钥。不过,如果合作伙伴更希望自行生成条形码, 以便将条形码批量上传到 Google。然后,这些条形码 传递给用户的而这些手机的操作方式就像旋转条形码一样, 显示一小段时间。我们将该解决方案称为“合作伙伴生成” 轮换条形码。

合作伙伴生成的旋转条形码 API

合作伙伴生成的旋转条形码使用相同的旋转条形码创建 对象。只有类型是必填项,不过我们还建议创建一个小型的启动方式 一组条形码(大约 10 分钟), initialRotatingBarcodeValues。合作伙伴有责任确保 始终向用户提供有效的条形码,initialRotatingBarcodeValues 则允许 因此后续批量上传调用设为异步执行

  rotatingBarcode {
    initialRotatingBarcodeValues: object (RotatingBarcodeValues),
    type: enum (BarcodeType),
  }
字段 说明
initialRotatingBarcodeValues

object (RotatingBarcodeValues)

要在条形码中编码的值。必须至少提供一个值。这些初始 条形码的作用是消除用户首次获得卡券与 在进行后续批量上传调用时触发。

type

enum (BarcodeType)

必需。此条形码的类型。

可接受的值包括:

  • QR_CODE
  • PDF_417

RotatingBarcodeValues
字段 说明
startDateTime

string

第一个条形码的有效日期/时间。条形码将通过 使用 periodMillis

这是 ISO 8601 扩展格式的日期/时间,带偏移量。

values[]

string

要在条形码中编码的值。必须至少提供一个值。

值没有上限,但请注意,请求正文的大小 不能超过 5MB。

periodMillis

number

每个条形码的有效期。

批量更新条形码值

创建 RotatingBarcode 对象后,我们建议您上传 直至用户卡券过期。为此,您可以使用 以下 REST API 端点。

方法:transitobject.uploadrotatingbarcodevalues

将轮播的条形码值上传到指定对象 ID 引用的公交对象。

HTTP 请求

POST https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc eId}/uploadRotatingBarcodeValues

路径参数

参数 说明
resourceId

string

对象的唯一标识符。

请求正文

请求正文(不得超过 5MB)包含 RotatingBarcodeValues

方法:transitobject.downloadrotatingbarcodevalues

下载指定对象引用的公交对象的轮替条形码值 ID。如果合作伙伴想要验证最新批次,这将非常有用。

HTTP 请求

GET https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do wnloadRotatingBarcodeValues?alt=media

路径参数

参数 说明
resourceId

string

对象的唯一标识符。

回退机制

请注意,如果其他有效的 RotatingBarcode 没有可显示的有效条形码( 尚未上传,或当前的所有条形码都已用完),则会发生错误 相应消息会向用户显示