如何在不使用OAuth2或永久密钥的情况下在PHP中使用BigQuery流插入?

时间:2014-04-15 23:00:07

标签: php google-bigquery google-api-php-client

如何在不使用oauth2或使用永久密钥的情况下,使用bigquery流式插入从服务器到服务器?

我需要每分钟插入大约20,000行一对一。我看到的所有示例都使用带有oauth的Google api客户端。另一方面,在BigQuery API资源管理器中:

(https://developers.google.com/bigquery/docs/reference/v2/tabledata/insertAll)

我看到了这个网址:

https://www.googleapis.com/bigquery/v2/projects/projectId/datasets/datasetId/tables/tableId/insertAll?key=apikey

我可以创建服务器密钥,但它会返回登录所需的注释。是否可以在不为每个插入执行请求令牌的情况下发送大量插入?请注意,我使用的是PHP。

1 个答案:

答案 0 :(得分:2)

OAuth2访问令牌适用于一小时等;如果你使用它,你不会需要为每个插入一个新的。 PHP客户端应该在到期时管理令牌并请求新令牌。

另一种选择是使用服务帐户或PKS#12 auth。这需要签署您的请求,但它根本不需要访问令牌。请参阅文档here。示例在java和python中,但是python应该相对容易转换为PHP。