【发布时间】:2020-05-29 00:42:43
【问题描述】:
我使用以下代码调用 API v4 来打印电子表格的值。进展顺利。
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,"https://sheets.googleapis.com/v4/spreadsheets/
spreadsheetID/values/PHP?valueRenderOption=UNFORMATTED_VALUE&key=yourKeyId");
$result = curl_exec ($curl);
curl_close ($curl);
我无法实现的是对其进行插入或更新,我无法为此将 PHP curl 放在一起。一些帮助?请尝试以下方法,但它不起作用。
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,"https://sheets.googleapis.com/v4/spreadsheets/
spreadsheetID/append/PHP?InsertDataOption=INSERT_ROWS&key=yourKeyId");
$jvalues=array(array("5869","35685987","Ema","2020-05-29","no brinda","3563430423"));
$jsonData = array(
'values' => $jvalues
);
$jsonDataEncoded = json_encode($jsonData);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonDataEncoded);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
$result = curl_exec ($curl);
curl_close ($curl);
一些帮助,我在任何地方都找不到示例。 谢谢。
【问题讨论】:
-
当我看到您的脚本时,您似乎正在使用 API 密钥。如果我的理解是正确的,不幸的是,API 密钥不能用于 POST 方法,而可以用于 GET 方法。因此,需要将值放入 Google 电子表格以使用由 OAuth2 和/或服务帐户检索到的访问令牌。顺便说一句,当 Google 电子表格不是您的或您没有写入权限时,即使使用访问令牌,也无法使用这些值。也请注意这一点。
标签: php curl google-sheets