2

私がする必要があるのは、「公開」Googleスプレッドシートのコンテンツを読み取ることです(公開とは、「ファイル> Webに公開」をクリックしてシートを保存したことを意味するため、Googleにログインしなくてもアクセスできますアカウント)、そして、それにも何かを書き込んでください。

ぐぐってみると、シートにアクセスして、シートの内容に相当するxmlを次のようなもので取得できることがわかりました

https://spreadsheets.google.com/feeds/list/<sheetCode>/od6/public/values

その URL をブラウザに読み込むとうまく機能します。しかし、返された値、つまりxml(またはjson、ただしxmlが望ましい)を取得して処理するには、「javascript-way」を見つける必要があります。

ajax 呼び出しを使用しようとしましたが、プロトコルに問題があると思います. サーバーの応答を正しく取得できません。

$.ajax({
    type: "GET",
    url: "https://spreadsheets.google.com/feeds/list/<sheetCode>/od6/public/values",
    success: function(data){alert("yeah");},
    error: function(){alert("fail..");},
    dataType:"xml",
});

また、xml の代わりに json を取得しようとし、「?alt=json」を URL に追加してデータ型を変更しましたが、まだ問題があります..

アイデア/提案はありますか?

よろしくお願いします。

4

1 に答える 1

4

JSONP呼び出しでリクエストする必要があり、コールバックメソッドを指定する必要があります。これは、jQueryで次を使用して実行できます。

var url = 'https://spreadsheets.google.com/feeds/list/<CODE>/od6/public/values?alt=json-in-script&callback=?';
jQuery.getJSON(url).success(function(data) {
    console.log(data); 
}).error(function(message) {
    console.error('error' + message); 
}).complete(function() {
    console.log('completed!'); 
});

Googlespreedsheetsのドキュメントとサンプル。

于 2012-11-20T17:36:28.917 に答える