• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

routes/user.ts logout 부분 'Request<ParamsDictionary, any, any, ParsedQs>' 형식에 'session' 속성이 없습니다. 에러관련

20.08.29 23:26 작성 조회수 275

0

강의를 따라 하면서, 

```ts

router.post("/logout", isLoggedIn, (req, res) => {
req.logout();
req.session!.destroy(() => {
res.send("logout-성공");
});
});

```

이렇게 작성 하였습니다, 그런데 error message에 아래와 같은 오류가 발생했습니다.

'Request<ParamsDictionary, any, any, ParsedQs>' 형식에 'session' 속성이 없습니다.

혹시, JSON처럼 다음강의내용에 나올까해서 한번 더 확인해보고, 구글링을 해보았는데,

좀처럼 해결이 안되어 질문 남기게 되었습니다.

답변 1

답변을 작성해보세요.

1

이 부분 타입스크립트 버전이 올라가서 코드가 달라졌습니다. 조만간 강좌 다시 찍어서 올리겠습니다.

taeminida님의 프로필

taeminida

2022.08.09

바뀐 강좌는 어디서 확인 가능할까요?

아직 업로드가 안 되었습니다. 저 부분은 @types/express-session 설치하면 해결됩니다.

taeminida님의 프로필

taeminida

2022.08.09

무슨 문제가 있는지 계속 코드를 확인하니, Express.Request에 @types/express-session이 설치되있음에도 불구하고, 가져오지를 못해서 그랬네요..! index.d.ts에 ' import "@types/express-session"을 추가해서 ' 실행해보니 밑줄이 사라지고 오류가 없어졌는데, 이렇게 해도 괜찮을지 궁금하네요!

https://inf.run/Gqhw

강의 출시되었습니다.

음.. @types/express-session은 설치만으로도 효과가 있어야 합니다. tsconfig.json의 module 설정을 봐야할 것 같습니다.