|
@@ -883,9 +883,8 @@ router.get('/:lang/coloring-page/:str', function (req, res, next) {
|
|
|
utils.validators.validateId(id);
|
|
utils.validators.validateId(id);
|
|
|
|
|
|
|
|
let imageType = req.headers.accept?.includes('image/webp') ? 'webp' : 'jpeg'; // 浏览器支持webp就用webp
|
|
let imageType = req.headers.accept?.includes('image/webp') ? 'webp' : 'jpeg'; // 浏览器支持webp就用webp
|
|
|
- let page = req.query.page ?? 1;
|
|
|
|
|
|
|
|
|
|
- let cacheKey = `${CACHE_PREFIX}_${imageType}_detail_${id}_${lang}_${page}`;
|
|
|
|
|
|
|
+ let cacheKey = `${CACHE_PREFIX}_${imageType}_detail_${id}_${lang}_${req.query.page}_${req.query.length}`;
|
|
|
let htmlData = await redis.getAsync(cacheKey);
|
|
let htmlData = await redis.getAsync(cacheKey);
|
|
|
if (!htmlData) {
|
|
if (!htmlData) {
|
|
|
let doc = await models.Art
|
|
let doc = await models.Art
|
|
@@ -975,7 +974,7 @@ router.get('/:lang/detail/:id', function (req, res, next) {
|
|
|
let imageType = req.headers.accept?.includes('image/webp') ? 'webp' : 'jpeg'; // 浏览器支持webp就用webp
|
|
let imageType = req.headers.accept?.includes('image/webp') ? 'webp' : 'jpeg'; // 浏览器支持webp就用webp
|
|
|
let page = req.query.page ?? 1;
|
|
let page = req.query.page ?? 1;
|
|
|
|
|
|
|
|
- let cacheKey = `${CACHE_PREFIX}_${imageType}_detail_${id}_${lang}_${page}`;
|
|
|
|
|
|
|
+ let cacheKey = `${CACHE_PREFIX}_${imageType}_detail_${id}_${lang}_${req.query.page}_${req.query.length}`;
|
|
|
let htmlData = await redis.getAsync(cacheKey);
|
|
let htmlData = await redis.getAsync(cacheKey);
|
|
|
if (!htmlData) {
|
|
if (!htmlData) {
|
|
|
let doc = await models.Art
|
|
let doc = await models.Art
|
|
@@ -1229,6 +1228,11 @@ function replaceUriParams(uri, newPage, newLength) {
|
|
|
// 使用正则表达式替换length参数
|
|
// 使用正则表达式替换length参数
|
|
|
uri = uri.replace(/(length=)\d+/, `length=${newLength}`);
|
|
uri = uri.replace(/(length=)\d+/, `length=${newLength}`);
|
|
|
|
|
|
|
|
|
|
+ // 如果是第一页,uri就不带?page=1&length=30了,避免重复页面
|
|
|
|
|
+ if (newPage == 1) {
|
|
|
|
|
+ uri = uri.replace(/(?:\?|&)((page|length)=\d+)/g, '');
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
// 返回替换后的URI
|
|
// 返回替换后的URI
|
|
|
return uri;
|
|
return uri;
|
|
|
}
|
|
}
|