diff --git a/backend/package.json b/backend/package.json index bb15e68..2c9523f 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,6 +1,6 @@ { "name": "sub-store", - "version": "2.14.211", + "version": "2.14.212", "description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.", "main": "src/main.js", "scripts": { diff --git a/backend/src/utils/headers-resource-cache.js b/backend/src/utils/headers-resource-cache.js index 4a4fcbc..a4bf92e 100644 --- a/backend/src/utils/headers-resource-cache.js +++ b/backend/src/utils/headers-resource-cache.js @@ -10,7 +10,17 @@ class ResourceCache { if (!$.read(HEADERS_RESOURCE_CACHE_KEY)) { $.write('{}', HEADERS_RESOURCE_CACHE_KEY); } - this.resourceCache = JSON.parse($.read(HEADERS_RESOURCE_CACHE_KEY)); + try { + this.resourceCache = JSON.parse($.read(HEADERS_RESOURCE_CACHE_KEY)); + } catch (e) { + $.error( + `解析持久化缓存中的 ${HEADERS_RESOURCE_CACHE_KEY} 失败, 重置为 {}, 错误: ${ + e?.message ?? e + }`, + ); + this.resourceCache = {}; + $.write('{}', HEADERS_RESOURCE_CACHE_KEY); + } this._cleanup(); } diff --git a/backend/src/utils/resource-cache.js b/backend/src/utils/resource-cache.js index 6bb3092..34db7bf 100644 --- a/backend/src/utils/resource-cache.js +++ b/backend/src/utils/resource-cache.js @@ -7,7 +7,17 @@ class ResourceCache { if (!$.read(RESOURCE_CACHE_KEY)) { $.write('{}', RESOURCE_CACHE_KEY); } - this.resourceCache = JSON.parse($.read(RESOURCE_CACHE_KEY)); + try { + this.resourceCache = JSON.parse($.read(RESOURCE_CACHE_KEY)); + } catch (e) { + $.error( + `解析持久化缓存中的 ${RESOURCE_CACHE_KEY} 失败, 重置为 {}, 错误: ${ + e?.message ?? e + }`, + ); + this.resourceCache = {}; + $.write('{}', RESOURCE_CACHE_KEY); + } this._cleanup(); } diff --git a/backend/src/utils/script-resource-cache.js b/backend/src/utils/script-resource-cache.js index d4d1ada..e9f2d91 100644 --- a/backend/src/utils/script-resource-cache.js +++ b/backend/src/utils/script-resource-cache.js @@ -10,7 +10,17 @@ class ResourceCache { if (!$.read(SCRIPT_RESOURCE_CACHE_KEY)) { $.write('{}', SCRIPT_RESOURCE_CACHE_KEY); } - this.resourceCache = JSON.parse($.read(SCRIPT_RESOURCE_CACHE_KEY)); + try { + this.resourceCache = JSON.parse($.read(SCRIPT_RESOURCE_CACHE_KEY)); + } catch (e) { + $.error( + `解析持久化缓存中的 ${SCRIPT_RESOURCE_CACHE_KEY} 失败, 重置为 {}, 错误: ${ + e?.message ?? e + }`, + ); + this.resourceCache = {}; + $.write('{}', SCRIPT_RESOURCE_CACHE_KEY); + } this._cleanup(); }