반응형
이 글을 읽고 기억해야 할 부분들을 메모
보안 관련된 것은 props나 url이 아닌 cookie같은 것으로 검증하기
예를 들어 url에 isAdmin = true
같은 값을 사용하거나 로그아웃 혹은 변경사항 저장 같은 것을 수행하는데 사용되서는 안된다. 이는 클라이언트단에서 오용될 가능성이 있다. 그렇기 때문에 보안과 관련된 것들은 cookies같은 것들을 이용하는 것이 좋다.
클로저
서버컴포넌트에서도 클로저가 적용되고 서버액션은 클로저에서도 인코딩된다.
export default function Page() {
const publishVersion = await getLatestVersion();
async function publish() {
"use server";
if (publishVersion !== await getLatestVersion()) {
throw new Error('The version has changed since pressing publish');
}
...
}
return <button action={publish}>Publish</button>;
}
위 코드에서는 publishVersion에 대한 snapshot이 클라이언트, 서버가 실행될 때 둘 다 전송된다.
반응형
'개발 > Next.js' 카테고리의 다른 글
1분만에 auth 구현 할 수 있게 해주는 next-auth (0) | 2024.04.06 |
---|---|
middleware.ts (0) | 2024.02.11 |
React Server Component (0) | 2023.10.12 |
Next App router에서 use client가 CSR을 뜻하지는 않는다. (0) | 2023.10.05 |
Next.js-before-hydration, Next.js-hydration (0) | 2023.09.02 |