在 Web 应用程序开发中,我想要一种一致的方式来捕获和报告错误情况。例如,数据库更新例程可能会检测到各种错误情况,理想情况下,我希望应用程序能够捕获它们并优雅地报告。下面的代码不起作用,因为抛出错误时未定义 retdiag...
function saveData(app,e) {
var db ;
var retdiag = "";
var lock = LockService.getPublicLock();
lock.waitLock(30000);
try {
// e.parameters has all the data fields from form
// re obtain the data to be updated
db = databaseLib.getDb();
var result = db.query({table: 'serviceUser',"idx":e.parameter.id});
if (result.getSize() !== 1) {
throw ("DB error - service user " + e.parameter.id);
}
//should be one & only one
retdiag = 'Save Data Finished Ok';
}
catch (ex) {
retdiag= ex.message // undefined!
}
finally {
lock.releaseLock();
return retdiag;
}
}
GAS 是否有一个好的或最佳实践?