2012-01-20 10 views
0

JavaScript/JQueryを使用してGoogleスプレッドシートに新しい行を追加しようとしています。私はこれを行う方法は考えているが、ここで私の試みです:JQuery .ajax POST to Spreadsheets API?

 var myJSONObject = {"entry": [ 
     "gsx:name": name, 
     "gsx:email": email, 
     "gsx:phone": phone, 
     "gsx:guests": guests 
     ]} 

     var json_uri = "https://spreadsheets.google.com/feeds/list/" + KEY + "/" + id + "/" + SECURE + "/values?alt=json" 

     $.ajax({ 
     type: "POST", 
     url: json_uri, 
     //contentType: 'application/json', 
     data: myJSONobject 
     dataType: 'json', 
     success: function(data){ 
      alert("row added!"); 
     }, 
     error: function(){ 
      alert("error"); 
     } 
    }); 

が、私はエラーを取得しておく:(

答えて

0

私はjQueryのAJAX APIを使用してについてはよく分からないが、あなたが構築してみてください以下、図のように、あなたのパラメータを設定するなど、XMLエントリ。

おそらく他の誰かが、jQueryのAPIでそれを行う方法を示すことができる?

gdocs.constructSpreadAtomXml_ = function(name, email, phone, guests) {  
    var atom = ["<?xml version='1.0' encoding='UTF-8'?>", 
       '<entry xmlns="http://www.w3.org/2005/Atom" xmlns:gsx="http://schemas.google.com/spreadsheets/2006/extended">', 
       '<gsx:name>',name,'</gsx:title>', 
       '<gsx:email>',email,'</gsx:url>', 
       '<gsx:phone>',phone,'</gsx:summary>', 
       '<gsx:guests>',guests,'</gsx:tags>', 
       '</entry>'].join(''); 
    return atom; 
}; 

...

var params = { 
    'method': 'POST', 
    'headers': { 
     'GData-Version': '3.0', 
     'Content-Type': 'application/atom+xml' 
    }, 

    'body': gdocs.constructSpreadAtomXml_(name, email, phone, guests) 
}; 

    var worksheetId = 'od6'; //The first worksheet. 

    var url = 'https://spreadsheets.google.com/feeds'+'/list/'+docId+'/'+worksheetId+'/private/full'; 

    //sends the params to the background page to get delivered to gDocs 
    oauth.sendSignedRequest(url, handleSuccess, params);