Unerwartete Ausnahme beim Serialisieren der Fortsetzung von Google Apps Script
Ich habe vor kurzem den Fehler "Unerwartete Ausnahme bei Fortsetzung der Serialisierung" in einer Tabellenkalkulation in Google Apps Script erhalten, als ich versuchte, ein Debugging durchzuführen. Der Fehler scheint zu starten, nachdem ich eine Verbindung zur Google CloudSQL-API hergestellt habe. Dieser Fehler tritt auch nach dem Auskommentieren des jdbc-Objektkonstruktors auf. Es scheint, dass andere dieses Problem hatten und eine Google-Technologie benötigten, um das Problem zu beheben.
Ich habe alle Diskussionsrunden nach einer Lösung für dieses Problem durchsucht, ohne Erfolg. Gibt es eine Chance, dass ein Google-Techniker für mich einen Blick unter die Haube wirft? Ich würde die Postleitzahl eingeben, wenn ich feststellen könnte, welche Leitung den Fehler tatsächlich auslöst.
BEARBEITEN:
Ok, ich glaube, ich habe herausgefunden, wo der Fehler auftritt. Scheint das zu sein
var response = UrlFetchApp.fetch(url + nextPage,oauth_options);
in der while-Schleife. Hier ist der gesamte Funktionscode.
function retrieveEvents(endTimeMinimum, updatedAfter, orderBy){
//var url = 'https://www.googleapis.com/calendar/v3/calendars/' + source_cal + '/events?key=' + api_key + "&futureevents=true&orderBy=updated&sortOrder=descending&updatedMin=" + last_sync_date_formated;
//var url = 'https://www.googleapis.com/calendar/v3/calendars/' + source_cal + '/events?key=' + api_key + "&orderBy=updated&sortOrder=descending&updatedMin=" + last_sync_date_formated;
var url = 'https://www.googleapis.com/calendar/v3/calendars/' + source_cal + '/events?key=' + api_key + "&singleEvents=true";
if ((orderBy != null) && (orderBy != "")){
url += "&orderBy=" + orderBy;
}
else url += "&orderBy=updated";
if ((updatedAfter != null) && (updatedAfter != "")){
url += "&updatedMin=" + updatedAfter;
}
else url += "&updatedMin=" + last_sync_dateTime;
//if no endTimeMinimum is specified, the current time will be used.
if (endTimeMinimum == null || endTimeMinimum == ""){
endTimeMinimum = date_rfc339("Today");
}
url += "&timeMin=" + endTimeMinimum;
Logger.log("Request URL:" + url);
var largeString = "";
var events = new Array();
var nextPage = "";
var jsonObj
while(true){
var response = UrlFetchApp.fetch(url + nextPage,oauth_options);
largeString = response.getContentText();
if ((largeString != null) && (largeString != "")) {
jsonObj = JSON.parse(largeString);
}
if ('items' in jsonObj) events = events.concat(jsonObj.items);
if ('nextPageToken' in jsonObj){
nextPage = "&pageToken=" + jsonObj.nextPageToken;
continue;
}
break;
}
if (events.length == 0)return null;
return events;
}