Google Sheet API v4 "Unable to parse range" 获取 table 数据时

Google Sheet API v4 "Unable to parse range" when getting table data

我正在尝试学习 Google Sheets API for PHP 从 sheet 读取数据。我正在使用 https://github.com/googleapis/google-api-php-client/ 阅读未发布到网络的 Google Sheet。我已经在我的 Google 帐户的 Google Sheets API 中设置了访问权限。我的基本连接有效,使用这个:

// Connect the Google Sheets API client
require_once __DIR__ . '/vendor/autoload.php';

// Load service key
$googleAccountKeyFilePath = __DIR__ . '/service_key.json';
putenv('GOOGLE_APPLICATION_CREDENTIALS=' . $googleAccountKeyFilePath);

// Create new client
$client = new Google_Client();

// Set credentials
$client->useApplicationDefaultCredentials();

// Access for reading, editing, creating and deleting tables
$client->addScope('https://www.googleapis.com/auth/spreadsheets');

$service = new Google_Service_Sheets($client);

// Spreadsheet ID
$spreadsheetId = 'my_id';

$response = $service->spreadsheets->get($spreadsheetId);

// Get properties of spreadsheet
$spreadsheetProperties = $response->getProperties();

// spreadsheet name
var_dump($spreadsheetProperties->title);

var_dump输出

string(4) "Test"

但是当我尝试

$range = 'Test';
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
var_dump($response);

转储 sheet 测试中的所有单元格,出现错误

Uncaught Google\Service\Exception: { "error": { "code": 400, "message": "Unable to parse range: Test", "errors": [ { "message": "Unable to parse range: Test", "domain": "global", "reason": "badRequest" } ], "status": "INVALID_ARGUMENT" } }

如何转储单元格数据的示例是什么?

根据 documentation,范围必须使用 A1 表示法或 R1C1 表示法。所以范围应该是

$range = 'A1:A6';

$range = 'A[1]:A[6]';

如果您需要指定标签名称,请在范围之前。从 the example 开始,它看起来像

$range = 'Class Data!A2:E';