ارجاع به یک کش خاص.
این کلاس به شما این امکان را می دهد که موارد را از حافظه پنهان درج، بازیابی و حذف کنید. این می تواند به ویژه زمانی مفید باشد که بخواهید مکرر به یک منبع گران قیمت یا کند دسترسی داشته باشید. به عنوان مثال، فرض کنید یک فید RSS در example.com دارید که واکشی آن 20 ثانیه طول می کشد، اما می خواهید با یک درخواست متوسط سرعت دسترسی را افزایش دهید.
function getRssFeed() { const cache = CacheService.getScriptCache(); const cached = cache.get('rss-feed-contents'); if (cached != null) { return cached; } const result = UrlFetchApp.fetch( 'http://example.com/my-slow-rss-feed.xml'); // takes 20 seconds const contents = result.getContentText(); cache.put('rss-feed-contents', contents, 1500); // cache for 25 minutes return contents; }اگر مورد در حافظه نهان نباشد، همچنان باید 20 ثانیه صبر کنید، اما تماس های بعدی بسیار سریع خواهند بود تا زمانی که آیتم در 25 دقیقه از حافظه پنهان منقضی شود.
روش ها
روش | نوع برگشت | شرح مختصر |
---|---|---|
get(key) | String | مقدار ذخیره شده در حافظه پنهان را برای کلید داده شده دریافت می کند، یا اگر هیچ موردی پیدا نشد، null . |
get All(keys) | Object | یک شی جاوا اسکریپت حاوی تمام جفتهای کلید/مقدار موجود در حافظه پنهان برای آرایهای از کلیدها را برمیگرداند. |
put(key, value) | void | یک جفت کلید/مقدار به حافظه پنهان اضافه می کند. |
put(key, value, expirationInSeconds) | void | یک جفت کلید/مقدار با زمان انقضا (بر حسب ثانیه) به حافظه پنهان اضافه می کند. |
put All(values) | void | مجموعه ای از جفت های کلید/مقدار را به حافظه پنهان اضافه می کند. |
put All(values, expirationInSeconds) | void | مجموعهای از جفتهای کلید/مقدار را با زمان انقضا (بر حسب ثانیه) به حافظه پنهان اضافه میکند. |
remove(key) | void | یک ورودی را با استفاده از کلید داده شده از حافظه پنهان حذف می کند. |
remove All(keys) | void | مجموعه ای از ورودی ها را از حافظه پنهان حذف می کند. |
مستندات دقیق
get(key)
مقدار ذخیره شده در حافظه پنهان را برای کلید داده شده دریافت می کند، یا اگر هیچ موردی پیدا نشد، null
.
// Gets the value from the cache for the key 'foo'. const value = CacheService.getScriptCache().get('foo');
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
key | String | کلید جستجو در حافظه پنهان |
بازگشت
String
- مقدار ذخیره شده در حافظه پنهان، یا اگر هیچ موردی پیدا نشد، صفر است
get All(keys)
یک شی جاوا اسکریپت حاوی تمام جفتهای کلید/مقدار موجود در حافظه پنهان برای آرایهای از کلیدها را برمیگرداند.
// Gets a set of values from the cache const values = CacheService.getDocumentCache().getAll(['foo', 'x', 'missing']); // If there were values in the cache for 'foo' and 'x' but not 'missing', then // 'values' would be: {'foo': 'somevalue', 'x': 'othervalue'}
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
keys | String[] | کلیدهای جستجو |
بازگشت
Object
- یک شی جاوا اسکریپت حاوی جفتهای کلید/مقدار برای همه کلیدهای موجود در حافظه پنهان
همچنین ببینید
put(key, value)
یک جفت کلید/مقدار به حافظه پنهان اضافه می کند.
حداکثر طول یک کلید 250 کاراکتر است. حداکثر مقدار داده ای که می توان در هر کلید ذخیره کرد 100 کیلوبایت است. مقدار پس از 600 ثانیه (10 دقیقه) از حافظه پنهان منقضی می شود.
سقف موارد ذخیره شده در حافظه پنهان 1000 است. اگر بیش از 1000 مورد نوشته شده باشد، حافظه پنهان 900 مورد را در دورترین فاصله از تاریخ انقضا ذخیره می کند. این محدودیت ممکن است تغییر کند.
const cache = CacheService.getScriptCache(); // Puts the value 'bar' into the cache using the key 'foo' cache.put('foo', 'bar');
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
key | String | کلید ذخیره مقدار در زیر |
value | String | مقداری که باید ذخیره شود |
put(key, value, expirationInSeconds)
یک جفت کلید/مقدار با زمان انقضا (بر حسب ثانیه) به حافظه پنهان اضافه می کند.
حداکثر طول یک کلید 250 کاراکتر است. حداکثر مقدار داده ای که می توان در هر کلید ذخیره کرد 100 کیلوبایت است. زمان انقضای مشخص شده فقط یک پیشنهاد است. اگر دادههای کش زیادی ذخیره شود، ممکن است قبل از این زمان حذف شوند.
سقف موارد ذخیره شده در حافظه پنهان 1000 است. اگر بیش از 1000 مورد نوشته شده باشد، حافظه پنهان 900 مورد را در دورترین فاصله از تاریخ انقضا ذخیره می کند. این محدودیت ممکن است تغییر کند.
// Puts the value 'bar' into the cache using the key 'foo', but only for the // next 20 seconds. CacheService.getScriptCache().put('foo', 'bar', 20);
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
key | String | کلید ذخیره مقدار در زیر |
value | String | مقداری که باید ذخیره شود |
expiration In Seconds | Integer | حداکثر زمانی که مقدار در حافظه پنهان باقی می ماند، بر حسب ثانیه. حداقل 1 ثانیه و حداکثر 21600 ثانیه (6 ساعت) است. |
put All(values)
مجموعه ای از جفت های کلید/مقدار را به حافظه پنهان اضافه می کند.
شبیه به تماس های مکرر برای "put"، اما کارآمدتر است زیرا فقط یک تماس با سرور memcache برقرار می کند تا همه مقادیر را تنظیم کند. حداکثر طول یک کلید 250 کاراکتر است. حداکثر مقدار داده ای که می توان در هر کلید ذخیره کرد 100 کیلوبایت است. مقادیر پس از 600 ثانیه (10 دقیقه) از حافظه پنهان منقضی می شوند.
سقف موارد ذخیره شده در حافظه پنهان 1000 است. اگر بیش از 1000 مورد نوشته شده باشد، حافظه پنهان 900 مورد را در دورترین فاصله از تاریخ انقضا ذخیره می کند. این محدودیت ممکن است تغییر کند.
// Puts a set of values into the cache with the keys 'foo', 'x', and 'key'. const values = { foo: 'bar', x: 'y', key: 'value', }; CacheService.getUserCache().putAll(values);
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
values | Object | یک شی جاوا اسکریپت حاوی کلیدها و مقادیر رشته ای |
همچنین ببینید
put All(values, expirationInSeconds)
مجموعهای از جفتهای کلید/مقدار را با زمان انقضا (بر حسب ثانیه) به حافظه پنهان اضافه میکند.
شبیه به تماس های مکرر برای "put"، اما کارآمدتر است زیرا فقط یک تماس با سرور memcache برقرار می کند تا همه مقادیر را تنظیم کند. حداکثر طول یک کلید 250 کاراکتر است. حداکثر مقدار داده ای که می توان در هر کلید ذخیره کرد 100 کیلوبایت است. زمان انقضای مشخص شده فقط یک پیشنهاد است. اگر دادههای کش زیادی ذخیره شود، ممکن است قبل از این زمان حذف شوند.
سقف موارد ذخیره شده در حافظه پنهان 1000 است. اگر بیش از 1000 مورد نوشته شده باشد، حافظه پنهان 900 مورد را در دورترین فاصله از تاریخ انقضا ذخیره می کند. این محدودیت ممکن است تغییر کند.
// Puts a set of values into the cache with the keys 'foo', 'x', and 'key'. const values = { foo: 'bar', x: 'y', key: 'value', }; CacheService.getUserCache().putAll(values, 20);
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
values | Object | یک شی جاوا اسکریپت حاوی کلیدها و مقادیر رشته ای |
expiration In Seconds | Integer | حداکثر زمان باقی ماندن مقدار در حافظه پنهان، بر حسب ثانیه حداقل انقضای مجاز 1 ثانیه و حداکثر انقضای مجاز 21600 ثانیه (6 ساعت) است. انقضای پیش فرض 600 ثانیه (10 دقیقه) است. |
همچنین ببینید
remove(key)
یک ورودی را با استفاده از کلید داده شده از حافظه پنهان حذف می کند.
// Removes any cache entries for 'foo' CacheService.getUserCache().remove('foo');
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
key | String | کلید حذف از کش |
remove All(keys)
مجموعه ای از ورودی ها را از حافظه پنهان حذف می کند.
// Removes entries from the cache with keys 'foo' and 'x' CacheService.getDocumentCache().removeAll(['foo', 'x']);
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
keys | String[] | آرایه ای از کلیدها برای حذف |