首先让我说,如果这是一个简单的解决方案,我很抱歉,我从未使用过 google api 或类似的东西,而且我是 php 的新手
我目前正在尝试使用 Google Sheets API 读取电子表格并将其打印出来。我认为一切看起来都很好,但是当我运行它时,它给了我这个错误:
PHP Fatal error: Uncaught Google\Service\Exception: {
“错误”:{ “代码”:404, "message": "未找到请求的实体。", “错误”:[ { "message": "未找到请求的实体。", “域”:“全球”, “原因”:“未找到” } ], “状态”:“NOT_FOUND” } }
这是我的 php 文件:
require __DIR__ . '/vendor/autoload.php';
$client = new \Google_Client();
$client->setApplicationName('Sheets Test');
$client->setScopes([\Google_Service_Sheets::SPREADSHEETS]);
$client->setAccessType('offline');
$client->setAuthConfig(__DIR__ . '/credentials.json');
$service = new \Google_Service_Sheets($client);
$spreadsheetId = "1sefMmSCVnQRMVFuG8l5SKx7phpD2vvmwzq7opsgyuebYIU";
$range = "currentRatings!A2:C4";
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
$values = $response->getValues();
if(empty($values)){
print "No data found. \n";
} else {
$mask = "%10s %-10s $s\n";
foreach($values as $row){
echo sprintf($mask, $row[2], $row[1], $row[0]);
}
}
如上所示,我确实连接了一个凭据文件,该文件与工作表共享的服务帐户相同。我也知道问题发生/从这一行开始:
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
这是我尝试过的:
好吧,所以我发现我的 ID 太长,我可能在某个时候不小心输入了它,从而导致了错误。我确实检查了身份证,但我只检查了身份证的正面和背面。