From 47a349dd1880bc6d9f09a387e3b8500d40faf2b9 Mon Sep 17 00:00:00 2001 From: tangly Date: Tue, 18 Oct 2022 16:55:57 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=A8=E6=96=87=E6=90=9C=E7=B4=A2=E9=80=82?= =?UTF-8?q?=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/cache/cache_manager.js | 17 +++++++++-------- pages/search/[keyword].js | 4 ++-- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/lib/cache/cache_manager.js b/lib/cache/cache_manager.js index 2a4d8e3611e..8796d3f4bb6 100644 --- a/lib/cache/cache_manager.js +++ b/lib/cache/cache_manager.js @@ -17,19 +17,20 @@ if (process.env.MONGO_DB_URL && process.env.MONGO_DB_NAME) { * @param {*} key * @returns */ -export async function getDataFromCache(key) { - if (!BLOG.ENABLE_CACHE) { - return null - } - const dataFromCache = await api.getCache(key) - if (JSON.stringify(dataFromCache) === '[]') { +export async function getDataFromCache(key, force) { + if (BLOG.ENABLE_CACHE || force) { + const dataFromCache = await api.getCache(key) + if (JSON.stringify(dataFromCache) === '[]') { + return null + } + return api.getCache(key) + } else { return null } - return api.getCache(key) } export async function setDataToCache(key, data) { - if (!BLOG.ENABLE_CACHE || !data) { + if (!data) { return } await api.setCache(key, data) diff --git a/pages/search/[keyword].js b/pages/search/[keyword].js index 3de56ed130b..dc9924819fd 100644 --- a/pages/search/[keyword].js +++ b/pages/search/[keyword].js @@ -109,7 +109,7 @@ async function filterByMemCache(allPosts, keyword) { } for (const post of allPosts) { const cacheKey = 'page_block_' + post.id - const page = await getDataFromCache(cacheKey) + const page = await getDataFromCache(cacheKey, true) const tagContent = post.tags && Array.isArray(post.tags) ? post.tags.join(' ') : '' const categoryContent = post.category && Array.isArray(post.category) ? post.category.join(' ') : '' const articleInfo = post.title + post.summary + tagContent + categoryContent @@ -123,7 +123,7 @@ async function filterByMemCache(allPosts, keyword) { indexContent = appendText(indexContent, properties, 'caption') }) } - console.log('全文搜索缓存', cacheKey, page != null) + // console.log('全文搜索缓存', cacheKey, page != null) post.results = [] let hitCount = 0 for (const i in indexContent) {