私はGoogle APIにはまったく新しいものがあり、一般には比較的新しいコードです。私はチェックボックスのリストから複数の日を選択して当時のGoogleカレンダーの予定を作成できるウェブサイトを作ろうとしています。GoogleカレンダーAPI Javascript - イベントフォーマットを追加する
私は、表示とチェックボックスのロジックにASP.net Webページを使用しており、チェックボックスの結果をJSONとしてJavascriptに送信しています。その後、JavascriptでJSONとGoogleカレンダーのものを処理します。
ボイラープレートのコードをいくつかの例でコピーするだけで、Googleから認証され、イベントの詳細がハードコードされたカレンダーにイベントを追加できます。この問題は、ハードコードされた詳細ではなく変数でイベントの詳細を設定しようとすると始まります。
私はこれがうまくいくと信じています。小さなフォーマットの問題があり、動作しないと思います。
これは私が作成した詳細「T1」と「資源」の内容を置き換えるしようとすると、これは動作しません
function makeApiCall3() {
for (var i = 0; i < arrayOfEvents.length; i++)
{
var t1 = "{\"summary\":\"" + arrayOfEvents[i].summary + "\", \"start\":" + JSON.stringify(arrayOfEvents[i].start) + ", \"end\":" + JSON.stringify(arrayOfEvents[i].end) + "}";
gapi.client.load('calendar', 'v3', function() {
var resource = {
"summary": "Appointment",
"location": "Somewhere",
"start": {
"dateTime": "2017-05-29T10:00:00.000-07:00"
},
"end": {
"dateTime": "2017-05-29T10:00:00.000-07:00"
}
};
var request = gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': resource
});
request.execute(function (resp) {
console.log(resp);
});
alert(t1);
});
}
alert("End of Calendar Call");
}
「VARリソース」でハードコードさ詳細で動作します。
function makeApiCall3() {
for (var i = 0; i < arrayOfEvents.length; i++)
{
var t1 = "\"summary\":\"" + arrayOfEvents[i].summary + "\", \"start\":" + JSON.stringify(arrayOfEvents[i].start) + ", \"end\":" + JSON.stringify(arrayOfEvents[i].end);
gapi.client.load('calendar', 'v3', function() {
var resource = { t1
// "summary": "Appointment",
// "location": "Somewhere",
// "start": {
// "dateTime": "2017-05-29T10:00:00.000-07:00"
// },
// "end": {
// "dateTime": "2017-05-29T10:00:00.000-07:00"
// }
};
var request = gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': resource
});
request.execute(function (resp) {
console.log(resp);
});
alert(t1);
});
}
alert("End of Calendar Call");
}
"var request" "resource"部分を "t1"に置き換えただけでは機能しません。デバッグのために
function makeApiCall3() {
for (var i = 0; i < arrayOfEvents.length; i++)
{
var t1 = "{\"summary\":\"" + arrayOfEvents[i].summary + "\", \"start\":" + JSON.stringify(arrayOfEvents[i].start) + ", \"end\":" + JSON.stringify(arrayOfEvents[i].end) + "}";
gapi.client.load('calendar', 'v3', function() {
var resource = {
"summary": "Appointment",
"location": "Somewhere",
"start": {
"dateTime": "2017-05-29T10:00:00.000-07:00"
},
"end": {
"dateTime": "2017-05-29T10:00:00.000-07:00"
}
};
var request = gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': t1
});
request.execute(function (resp) {
console.log(resp);
});
alert(t1);
});
}
alert("End of Calendar Call");
}
私は警告を作ってきたと私は定型的なコードがあったように、正確にデータをフォーマットしてきた、まだそれが動作していないかのように、T1のアラート結果が見えます。 (写真はこちら) alert(t1) result
ここで説明したバッチ方法を試しましたが、その作業を行うことはできませんでした。 Google Calendar javascript api - Add multiple events
ありがとうございました。
どのようなエラーが表示されますか?あなたのユースケースはまだ試していませんが、[JSON.stringify()](https://www.w3schools.com/js/js_json_stringify.asp)を使って試しましたか? – noogui
エラーは表示されません。カレンダーに何も追加されません。 私はt1変数にJSON.stringify()を持っています。他にどこに提案していますか? –