2

スプレッドシートをアプリ/ウェブサイトに取り込みたいだけです。理想的には非公開にしたいのですが、まずは「公開」「Web公開」のスプレッドシートでデータを取り込もうとしています。

$.ajax({
   type: 'GET',
   url: 'http://spreadsheets.google.com/feeds/cells/' + spreadsheetKey + '/od6/public/full?alt=json',
   success: function(data){
     alert("success");
   } 
 });

これにより、常に次の結果が得られます。

「スプレッドシートへの表示アクセス権がありません。適切に認証されていることを確認してください。」

?alt=json を使用せずに、'cells' の代わりに 'list' を使用し、'full' の代わりに 'values' を使用してみました。何も機能しません。

また、この呼び出しにアクセス トークンを渡す方法はありますか? Google サインイン経由で認証し、スプレッドシート API スコープを許可しています。&accessToken=xxx と &access_token=xxx を試しました。ドキュメンテーションには Javascript に関するものは何もありません。

4

1 に答える 1

2

プライベート スプレッドシートに Javascript でアクセスするには、次の Javascript ライブラリが必要です: https://code.google.com/p/google-api-javascript-client/wiki/Authentication これにより、OAuth2.0 を使用できるようになります。非公開の Google スプレッドシートにアクセスできます。完全な説明については、 Javascript を使用した OAuth 2.0 による Google スプレッドシート APIの回答を参照してください。

アクセス トークンの構文は次 のとおりです。Javascript に関連する詳細は、 Google Spreadsheet API&access_token=xxx の Protocol 見出しの下にありますが、私が見つけたのはそれほど役に立ちません。

JSON を取得するには、次の手順を実行します。

var url = 'https://spreadsheets.google.com/feeds/list/' + urlLocation + '/od6/private/full?alt=json-in-script&access_token=' + token + '&callback=?';
$.getJSON(url, function(data) {
    //do stuff with data here
});
于 2013-03-21T10:20:16.613 に答える