ci / ci (22, ubuntu-latest) (push) Canceled after 0s
Publish Docker image / build (linux/amd64, ubuntu-latest, amd64) (push) Canceled after 0s
Publish Docker image / build (linux/arm64, ubuntu-24.04-arm, arm64) (push) Canceled after 0s
Publish Docker image / merge (push) Canceled after 0s
GitHub Release / release (push) Canceled after 0s
Add admin/image domain separation with host isolation middleware, optional hide-folder public URLs, GitHub release update check, and Lucky/Nginx deployment docs. Switch license to GPL-3.0-only.
18 lines
534 B
TypeScript
18 lines
534 B
TypeScript
import { requestPathToImageKey, serveImageByKey } from '../utils/serve-image'
|
||
|
||
/**
|
||
* 仅当路径像图片 key({type}/YYYY/MM/file.ext)时才接管。
|
||
* 其它请求(/_nuxt、/api、页面)原样放行。
|
||
*/
|
||
export default defineEventHandler(async (event) => {
|
||
const method = getMethod(event)
|
||
if (method !== 'GET' && method !== 'HEAD') return
|
||
|
||
const key = requestPathToImageKey(getRequestURL(event).pathname, {
|
||
hideFolder: isHideFolderInUrl(event)
|
||
})
|
||
if (!key) return
|
||
|
||
return serveImageByKey(event, key)
|
||
})
|