Google Spreadsheets API v4文档似乎列出了针对batchUpdate的错误网址。
文档列表:
POST https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}/values:batchUpdate
但是以下代码
let range = "Sheet1!A\(index):\(index)"
let url = String(format:"%@/%@/values:batchUpdate/%@", baseUrl, spreadsheetId, range)
let params = ["valueInputOption":"RAW"]
let fullUrl = GTLUtilities.URLWithString(url, queryParameters: params)
let body = GTLObject()
body.JSON = ["majorDimension":"ROWS",
"values": [values]]
driveService.fetchObjectByUpdatingObject(body, forURL: fullUrl, completionHandler: {
(ticket:GTLServiceTicket!, object:AnyObject!, error:NSError!) in
结果
<p>The requested URL <code>/v4/spreadsheets/....values:batchUpdate/Sheet1!A4:4?valueInputOption=RAW</code> was not found on this server. <ins>That’s all we know.</ins>
在此实例中使用的正确网址是什么?
答案 0 :(得分:-1)
您的网址不正确。文档说明:https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}/values:batchUpdate
...但您使用的网址是:POST https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}/values/:batchUpdate/{range}?{parameters}
在batchUpdate方法中,范围是POST正文的一部分,为您提供的每个更新提供一个范围。有关详细信息,请参阅https://developers.google.com/sheets/samples/writing#write_to_multiple_ranges示例。
您上面使用的代码示例似乎是针对普通的更新方法,而不是batchUpdate方法。有关详细信息,请参阅上述链接中的其他示例。