티스토리 뷰
[Nextjs] nextjs middleware활용해서 redirect구현하기
안녕하세요. 이번 포스팅에서는 nextjs 에서 middleware를 활용해서 redirect를 구현하는 방법에 대해 알아보겠습니다.
middleware에 작성된 코드는, request가 완료되기 전에 작동합니다.
이를 활용해, response를 중간에 가로채 수정할 수 있습니다.
response를 중간에 가로채서 url을 변경해주면 redirect기능을 구현할 수 있겠죠?
자주 사용되는 예시를 통해, redirect 기능을 구현하는 방법에 대해 알아보겠습니다.
아래 예시코드는 로그인이 되어있지 않은 유저가 페이지에 접근하려고 할 때, root페이지로 redirect를 시키는 코드입니다.
// middleware.ts
import { NextFetchEvent, NextRequest, NextResponse } from 'next/server';
export async function middleware(request: NextRequest, event: NextFetchEvent) {
if (request.nextUrl.pathname.startsWith('/auth')) {
// 쿠키를 통해 로그인 여부를 확인 -> 비로그인 상태일 경우 rootpage로 이동
if (request.cookies.get('logged') !== 'true') {
return NextResponse.redirect(new URL('/', request.url));
}
}
}
'개발일기 > REACT' 카테고리의 다른 글
[ Apollo] apolloClient nextjs 환경에서 'network-only' 가 작동하지 않는 현상 해결 (0) | 2022.11.10 |
---|---|
[Jest] mocking을 위한 jest.spyOn, mockImplementation 에 대해 알아보기 (0) | 2022.09.10 |
[Nextjs] userAgent 에서, 브라우저 환경 구분하는 방법 (0) | 2022.09.02 |
[React] DarkMode 새로고침시 화면 깜빡임문제 해결 - useLayoutEffect (0) | 2022.03.31 |
[React] Next.js build 할 때, dynamic route 404 error 해결하는 방법 (0) | 2022.03.20 |
댓글
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- zep
- 게더타운
- 전기공사기사
- 실기CBT
- cbt
- 게더타운맵
- 산업안전기사
- TypeScript
- 전기기사필기
- 전기기사
- 전기기사실기단답
- fakerjs
- 전기기기
- shortid
- nextjs
- 전기기사실기CBT
- 모두CBT
- 개더타운
- JavaScript
- 산안기 합격률
- 전자기학
- dummydata
- 전기기사 필기
- KEC반영
- gathertown
- TS
- 전력공학
- 전기산업기사
- React
- 산업안전기사 실기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함