2023-04-25 19:48:20 -03:00

18 lines
730 B
TypeScript

// middleware.ts
import { NextResponse } from 'next/server'
import type { NextRequest } from 'next/server'
// This function can be marked `async` if using `await` inside
export async function middleware(req: NextRequest, res: NextResponse) {
const refererPaths = req.headers.get('referer').split('/'); // logs the referer URL to the console
const urlPaths = req.nextUrl.pathname.split('/')
const datasetName = refererPaths[refererPaths.length - 1]
const fileName = urlPaths[urlPaths.length - 1]
return NextResponse.rewrite(new URL(`/api/get-data-file?datasetName=${datasetName}&fileName=${fileName}`, req.url))
}
// See "Matching Paths" below to learn more
export const config = {
matcher: '/datasets/:file*.csv',
}