3

我想在授权用户后写回我的谷歌电子表格。授权完成。但是,要写回电子表格,我已经按照此处所述发送 PUT 请求。它来自 iGoogle 小工具。

我的 XML 元素是:

var cellUrl = "https://spreadsheets.google.com/feeds/cells/" + key + "/od6/private/full/R2C2";
var XMLData = "<entry xmlns='http://www.w3.org/2005/Atom' xmlns:gs='http://schemas.google.com/spreadsheets/2006'>" + 
                "<id>" + cellUrl + "</id><link rel='edit' type='application/atom+xml' href='" + cellUrl + "'/>" + 
                "<gs:cell row='2' col='2' inputValue='300'/>" + 
            "</entry>";

我将 AJAX 请求发送为:

$.ajax({
                url: cellUrl,
                type: "PUT",
                contentType: 'application/atom+xml',
                processData: false,
                data: XMLData,
                error: function(XMLHttpRequest, textStatus, errorThrown){
                    alert(errorThrown);
                }, success: function(data, textStatus, XMLHttpRequest){
                    alert("Succeeded");
                }
            });

尽管如此,它并没有回信,也没有显示任何警报!什么是问题?

我应该使用 POST 来回信吗?我怎么做 ?

为了安全起见,我隐藏了 cellURL 密钥。它类似于我的电子表格网址中的键。

4

2 回答 2

0

你可以尝试这样的事情来看看是否有错误:

$.ajax({
        url: cellUrl,
        type: "PUT",
        contentType: 'application/atom+xml',
        processData: false,
        data: XMLData
    }, error: function(XMLHttpRequest, textStatus, errorThrown){
       alert(errorThrown);
    }, success: function(data, textStatus, XMLHttpRequest){
       alert("Succeeded");
    }

);
于 2011-01-24T06:41:17.023 回答
0

我的建议

  • 检查 'key' resourceID 应该转义
  • 如果仍然无法正常工作,请尝试将所有内容放入并添加和使用点击事件。对于 ajax,使用 iframe。
  • 试试 $.ajax({... , data:$(XMLData), ...});
于 2011-01-24T08:07:39.150 回答