mirror of
https://github.com/MeoProject/lx-music-api-server.git
synced 2025-05-23 19:17:41 +08:00
commit
497f21d2d4
@ -175,11 +175,12 @@ def request(url: str, options={}) -> requests.Response:
|
||||
# 缓存写入
|
||||
if cache_info and cache_info != "no-cache":
|
||||
cache_data = pickle.dumps(req)
|
||||
expire_time = (cache_info if isinstance(cache_info, int) else 3600) + int(time.time())
|
||||
expire_time = cache_info if isinstance(cache_info, int) else 3600
|
||||
expire_at = int((time.time) + expire_time)
|
||||
config.updateCache(
|
||||
"httpx",
|
||||
cache_key,
|
||||
{"expire": True, "time": expire_time, "data": utils.createBase64Encode(cache_data)},
|
||||
{"expire": True, "time": expire_at, "data": utils.createBase64Encode(cache_data)},
|
||||
expire_time,
|
||||
)
|
||||
logger.debug("缓存已更新: " + url)
|
||||
@ -331,11 +332,12 @@ async def AsyncRequest(url, options={}) -> ClientResponse:
|
||||
# 缓存写入
|
||||
if cache_info and cache_info != "no-cache":
|
||||
cache_data = pickle.dumps(req)
|
||||
expire_time = (cache_info if isinstance(cache_info, int) else 3600) + int(time.time())
|
||||
expire_time = cache_info if isinstance(cache_info, int) else 3600
|
||||
expire_at = int((time.time) + expire_time)
|
||||
config.updateCache(
|
||||
"httpx_async",
|
||||
cache_key,
|
||||
{"expire": True, "time": expire_time, "data": utils.createBase64Encode(cache_data)},
|
||||
{"expire": True, "time": expire_at, "data": utils.createBase64Encode(cache_data)},
|
||||
expire_time,
|
||||
)
|
||||
logger.debug("缓存已更新: " + url)
|
||||
|
@ -95,18 +95,18 @@ async def url(source, songId, quality, query={}):
|
||||
logger.info(f'获取{source}_{songId}_{quality}成功,URL:{result["url"]}')
|
||||
|
||||
canExpire = sourceExpirationTime[source]["expire"]
|
||||
expireTime = sourceExpirationTime[source]["time"] + int(time.time())
|
||||
canUseTime = int(expireTime - sourceExpirationTime[source]["time"] * 0.25)
|
||||
expireTime = int(sourceExpirationTime[source]["time"] * 0.75)
|
||||
expireAt = int(expireTime + time.time())
|
||||
config.updateCache(
|
||||
"urls",
|
||||
f"{source}_{songId}_{quality}",
|
||||
{
|
||||
"expire": canExpire,
|
||||
# 取有效期的75%作为链接可用时长
|
||||
"time": canUseTime,
|
||||
"time": expireAt,
|
||||
"url": result["url"],
|
||||
},
|
||||
canUseTime if canExpire else None,
|
||||
expireTime if canExpire else None,
|
||||
)
|
||||
logger.debug(f'缓存已更新:{source}_{songId}_{quality}, URL:{result["url"]}, expire: {expireTime}')
|
||||
|
||||
@ -121,7 +121,7 @@ async def url(source, songId, quality, query={}):
|
||||
"result": result["quality"],
|
||||
},
|
||||
"expire": {
|
||||
"time": expireTime if canExpire else None,
|
||||
"time": expireAt if canExpire else None,
|
||||
"canExpire": canExpire,
|
||||
},
|
||||
},
|
||||
@ -149,13 +149,14 @@ async def lyric(source, songId, _, query):
|
||||
}
|
||||
try:
|
||||
result = await func(songId)
|
||||
expireTime = int(time.time() + (86400 * 3))
|
||||
expireTime = 86400 * 3
|
||||
expireAt = int(time.time() + expireTime)
|
||||
config.updateCache(
|
||||
"lyric",
|
||||
f"{source}_{songId}",
|
||||
{
|
||||
"data": result,
|
||||
"time": expireTime, # 歌词缓存3天
|
||||
"time": expireAt, # 歌词缓存3天
|
||||
"expire": True,
|
||||
},
|
||||
expireTime,
|
||||
|
1236
poetry.lock
generated
1236
poetry.lock
generated
File diff suppressed because it is too large
Load Diff
@ -21,6 +21,8 @@ mutagen = "^1.47.0"
|
||||
colorama = "^0.4.6"
|
||||
ruamel-yaml = "^0.18.6"
|
||||
pybind11 = "^2.13.6"
|
||||
redis = "^5.2.0"
|
||||
hiredis = "^3.0.0"
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry-core"]
|
||||
|
@ -11,4 +11,4 @@ pillow
|
||||
colorama
|
||||
ruamel-yaml
|
||||
redis
|
||||
redis[hiredis]
|
||||
hiredis
|
||||
|
Loading…
x
Reference in New Issue
Block a user