Google apps脚本方法getDocumentProperties返回null

时间:2017-09-29 22:46:13

标签: google-apps-script

我在我的google apps脚本中使用文档属性来存储mysql数据库连接字符串并获取错误TypeError:无法在第2行调用null的方法“setProperties”,不知道原因可能是什么。

  dbmysqlconndev = PropertiesService.getDocumentProperties();
  dbmysqlconndev.setProperties({
   'mysqlUrl': 'jdbc:mysql://dbserverdev;databaseName=sample',
   'mysqlUser': 'username',
   'mysqlPassword': 'password'});
  var keys = dbmysqlconndev.getKeys();
  for (var i = 0; i < keys.length; i++) {
       dbmysqlconndev.getProperty(keys[i]);
  }

var mysqlurl = dbmysqlconndev.getProperty(keys[0]);
var mysqlusr = dbmysqlconndev.getProperty(keys[1]);
var mysqlpwd = dbmysqlconndev.getProperty(keys[2]);

1 个答案:

答案 0 :(得分:0)

原因是,正如错误消息所示,dbmysqlconndev为空。现在,PropertiesService.getDocumentProperties()会返回null吗?我们来看看documentation

  

仅当脚本已发布并作为加载项执行或者绑定到Google文件类型时才可用。当文档属性不可用时,此方法返回null。

这就是原因:您是否可以将其作为独立脚本执行。使用getScriptProperties代替getDocumentProperties