Ash*_*Ash 18 javascript middleware next.js
我正在使用 NextJS 中间件,可以nextUrl
从请求中获取对象,其中包括路径名等内容,但如何从中间件中获取查询字符串参数?我可以看到它作为 href 返回的字符串的一部分返回,然后我可以自己解析它,但我想知道它是否在它自己的对象中返回?
例如
export const middleware = (request) => {
const { nextUrl: { query } } = request;
...
};
Run Code Online (Sandbox Code Playgroud)
其中query
等于
{
param1: 'foo',
param2: 'bar',
etc.
}
Run Code Online (Sandbox Code Playgroud)
T.C*_*kij 26
nextUrl
对象已包含searchParams
有效实例URLSearchParams
。
EG的使用
export function middleware(req: NextRequest) {
if(req.nextUrl.searchParams.get('flag')) {
return NextResponse.rewrite('/feature);
}
}
Run Code Online (Sandbox Code Playgroud)
正如 @j-cue 上面所说,但我也发现你可以search
从nextUrl
.
例如
export const middleware = (request) => {
const { nextUrl: { search } } = request;
const urlSearchParams = new URLSearchParams(search);
const params = Object.fromEntries(urlSearchParams.entries());
};
Run Code Online (Sandbox Code Playgroud)
小智 -3
您可能只想从某个位置提取它:
const urlSearchParams = new URLSearchParams(window.location.search);
const params = Object.fromEntries(urlSearchParams.entries());
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
24636 次 |
最近记录: |