からデータを取得する方法:https://developers.google.com/google-apps/calendar/quickstart/nodejsのJavascript(NodeJS):この例に関しては、バックGoogleカレンダーのAPIコールバック
私はイベントのJSON配列を返すようにlistEventsを変更したいです。
それが現在のように呼ばれています:
function authorize(credentials, callback) {
私はListEventsにreturn文を追加しようとしたし、この:
"listEventsは" コールバックに渡された関数であるauthorize(JSON.parse(content), listEvents);
私はconsole.logの前に上記のconsole.logを取得するため、私には非同期になっていることは知っていますlistEvents関数の出力。 私は「待って」という言葉を投げてみましたが、運はありません。
と私はlistEventsにして追加のパラメータを設定してみました:
var jsonEvents;
authorize(JSON.parse(content), listEvents(jsonEvents));
console.log("Json Events=");
console.log(jsonEvents);
「例外TypeError:コールバックが関数ではありません」をもたらしました。
更新:@Tuchesの回答に基づいて、私はこれを動作させました。これを拡大する必要があるかどうかを知りたいですか?
authorize(JSON.parse(content), function(token) {
console.log("Got Token");
//console.log(token);
listEvents(token, function(jsonResult) {
console.log("Json Callback Events=");
console.log(jsonResult);
});
});
はオーケー、それは理にかなっている、しかし、私はAPIライブラリの一つで、このエラーを取得する:λノードtestGoogleCalendarAPI.js E:\ GitHubの\ NealWalters \ RabbiJoseph \ node_modules \ googleapis \ libに\ apirequest.js authClient.request(オプション、コールバック); ^ TypeError:authClient.requestは関数ではありません – NealWalters
私はauthorizeからトークンを取得してから、同期方式でlistEventsを呼び出しましたが、listEventsはcalendar.list.eventsからのコールバックを持っているためさらに複雑です。関数(err、response)。 – NealWalters
私の更新を見て、それが働いているが、おそらく最良の方法ではない。 – NealWalters