Frontend/React

[React, next-auth] DefaultSession - session에 넣을 정보 변경하기

Deeb 2022. 10. 14. 13:45

next-auth를 사용해서 useSsession으로 session에 올라간 정보를 받아오는 과정에서

token에는 다른 정보들이 다 저장되어있는데  defaultsession이라는 만들지도 않은 게 지정되어있었다 

 

아무리 파일내에서 찾아도 안 나왔다... 그래서 이름처럼 기본적으로 설정된거라고 짐작해서 

공식문서를 찾아보았고 역시 공식문서가 최고다

 

 

 

https://next-auth.js.org/getting-started/typescript#module-augmentation

 

TypeScript | NextAuth.js

NextAuth.js has its own type definitions to use in your TypeScript projects safely. Even if you don't use TypeScript, IDEs like VSCode will pick this up to provide you with a better developer experience. While you are typing, you will get suggestions about

next-auth.js.org

 

next-auth에서 친절하게

/types 폴더안에

next-auth.d.ts 라는 파일명으로 만들고 해당 내용을 넣기만 하면 끝난다.

 

추후에 백엔드가 수정되기로해서 일단은 deafultsession은 추가한 형태로 만들어두었다. 

import NextAuth, { DefaultSession }  from "next-auth"

declare module "next-auth" {
  /**
   * Returned by `useSession`, `getSession` and received as a prop on the `SessionProvider` React Context
   */
  interface Session {
    user: {
      // token에서 내가 불러올 값과 지정할 자료형
    } & DefaultSession["user"]
  }
}

 

반응형