Google 电子表格更新的正确语法 - Javascript

Correct syntax for Google Spreadsheet update - Javascript

本文关键字:语法 Javascript 电子表格 更新 Google      更新时间:2023-09-26

有人知道使用 Javascript API 更新 Google 电子表格中的行的正确语法吗?

我正在处理这里的 API 文档,但我无法弄清楚我需要发送数据的正确语法是什么。 我目前拥有的是:

var serialObject = $('#basicForm').serialize();
$.ajax({
        url: updateBasicUrl,
        type: 'PUT',
        data: serialObject,
    });

数据字段的语法应该是什么(上面抛出一个无法识别的错误)?

编辑 - 将 JSON 对象转换为 XML 以符合此处 xml 的确切外观后,它仍然不起作用:

var updateBasicUrl = "https://spreadsheets.google.com/feeds/list/*spreadsheetIDnumber*/od6/private/full/*cellID*/*versionnumber*?access_token=*accesstoken*
$.ajax({
        url: updateBasicUrl,
        type: 'PUT',
        contentType: 'application/atom+xml',
        //contentType: 'text/xml',  //tried both of these, they don't seem to work
        data: xmlBasic,
    })

编辑 - 所以似乎存在跨域源问题。 Google 电子表格 API 不允许这样做。 有人知道变通方法吗?

您可以在 Java 源代码中搜索解决方案——http://code.google.com/p/gdata-java-client/source/browse/trunk/java/src/com/google/gdata/client/spreadsheet/SpreadsheetService.java?r=94

这将触发 Java 版本中的发送:service.insert(cellFeedUrl, newEntry);

public void setCell(int row, int col, String formulaOrValue)
    throws IOException, ServiceException {
  CellEntry newEntry = new CellEntry(row, col, formulaOrValue);
  service.insert(cellFeedUrl, newEntry);
  out.println("Added!");
}