在谷歌应用程序脚本中使用CacheService从缓存中获取密钥值

时间:2015-12-28 11:24:15

标签: caching google-apps-script google-sheets

我正在尝试实现缓存。我在电子表格的有限脚本中编写了代码。它工作正常,即我能够获得特定键的值。但是此代码仅对有界脚本有效。

有谁知道如何从单独的脚本中访问特定键的值?

放入缓存的代码:(有界脚本)

var sp_key = '1231232';
var ss = SpreadsheetApp.openById(sp_Key); 
var s = ss.getSheetByName("test_Sheet");
var cache = CacheService.getScriptCache();
var val= "xyz"
cache.put(A, val);
var cache = CacheService.getPublicCache();
Logger.log(cache.get(A));

以上代码工作正常。但是,如果我想从无界脚本中获取价值,那么最好的方法是什么?

1 个答案:

答案 0 :(得分:2)

getScriptCache()方法也适用于独立的Apps脚本项目。

您的代码中存在错误。 A未定义。将引号括在A附近或将A定义为变量,并指定值

function scriptCache() {
  var sp_key = '1231232';
  //var ss = SpreadsheetApp.openById(sp_Key); 
  //var s = ss.getSheetByName("test_Sheet");
  var cache = CacheService.getScriptCache();
  var val= "xyz"
  cache.put('A', val);
  var cache = CacheService.getPublicCache();
  Logger.log(cache.get('A'));
}

我在独立的Apps脚本中运行该代码,但它确实有效。