feat: add MCP creator screenshot metrics recognition

This commit is contained in:
巫凤萍
2026-08-19 15:08:17 +08:00
parent 8f7ea0558d
commit ab3a544eec
12 changed files with 342 additions and 36 deletions

View File

@@ -4,9 +4,10 @@ import {
getUploadBucket,
} from "../../../lib/mvp-db";
import { adminForbidden, isAdminRequest } from "../../../lib/admin-auth";
import { verifyCreatorScreenshotAccessToken } from "../../../lib/creator-screenshot-access";
export async function GET(request: Request) {
if (!(await isAdminRequest(request))) return adminForbidden();
const isAdmin = await isAdminRequest(request);
try {
await ensureSchema();
const distributionId = new URL(request.url).searchParams
@@ -22,6 +23,18 @@ export async function GET(request: Request) {
)
.bind(distributionId)
.first<{ screenshot_key: string | null }>();
const mcpToken = new URL(request.url).searchParams.get("mcp_token") || "";
if (
!isAdmin &&
(!row?.screenshot_key ||
!verifyCreatorScreenshotAccessToken(
distributionId,
row.screenshot_key,
mcpToken,
))
) {
return adminForbidden();
}
if (
!row?.screenshot_key ||
!row.screenshot_key.startsWith("creator-center/")