sitemap
node.js
模块的documentation不能解释cacheTime
是什么。为什么需要生成站点地图?目的是什么?
最佳答案
cacheTime
是sitemap.js模块在从提供给它的URL列表中重新生成sitemap.xml
文件之前要等待的时间。
IE。在第一个请求时,会生成一个sitemap.xml
文件并将其放置在缓存中。后续请求会从缓存中读取站点地图,直到它过期并重新生成为止。
我同意可能会更清晰,但是源代码可以使它更加清晰。
根据sitemap.js的源代码,第136行:
// sitemap cache
this.cacheEnable = false;
this.cache = '';
if (cacheTime > 0) {
this.cacheEnable = true;
this.cacheCleanerId = setInterval(function (self) {
self.clearCache();
}, cacheTime, this);
}
和第187行:
Sitemap.prototype.toString = function () {
var self = this
, xml = [ '<?xml version="1.0" encoding="UTF-8"?>',
'<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">'];
if (this.cacheEnable && this.cache) {
return this.cache;
}
// TODO: if size > limit: create sitemapindex
this.urls.forEach( function (elem, index) {
// SitemapItem
var smi = elem;
具体来说:
if (this.cacheEnable && this.cache) {
return this.cache;
}
并且清除缓存操作上的
setInterval
等于给定的cacheTime
参数。请注意,如果您的网址更改并且
cacheTime
尚未触发清除站点地图缓存,则站点地图可能会过时。关于javascript - 站点地图node.js模块中的cacheTime是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21970790/