22.02.05 21:05 작성
·
685
2
저는 passport-jwt를 사용하여 로그인을 구현하였는데,
소셜 로그인을 위해 passport-apple 를 사용하여 유저 정보를 받아오려고하는데 막혔습니다.
https://github.com/ananay/passport-apple/issues/30
nest.js에서 passport-apple사용시 Strategy 클래스의 validate함수에 인자가 제대로 들어오지않는 이슈가 있는것같습니다.
제가 유저정보를 받아온후 그것을 db에 저장후 jwt를 발행하여 다음요청부터는 애플을 거치지않고 제 서버로 jwt를 보내면 제가 유저정보 주는방식으로 구현하려고하는데,
유저 정보를 어떻게 받아와야하는지 모르겠습니다.
구글링해보니 idToken을 decode하면 유저정보가 들어있다고하는데,
이렇게 코드를 짜니
[Nest] 31 - 02/06/2022, 8:41:18 AM ERROR [ExceptionsHandler] jwt malformed
JsonWebTokenError: jwt malformed
at Object.module.exports [as verify] (/usr/src/app/node_modules/jsonwebtoken/verify.js:63:17)
at JwtService.verify (/usr/src/app/node_modules/@nestjs/jwt/dist/jwt.service.js:37:20)
at AppleStrategy.validate (/usr/src/app/src/auth/strategies/apple.strategy.ts:25:60)
at AppleStrategy.<anonymous> (/usr/src/app/node_modules/@nestjs/passport/dist/passport/passport.strategy.js:20:55)
at Generator.next (<anonymous>)
at /usr/src/app/node_modules/@nestjs/passport/dist/passport/passport.strategy.js:8:71
at new Promise (<anonymous>)
at __awaiter (/usr/src/app/node_modules/@nestjs/passport/dist/passport/passport.strategy.js:4:12)
at AppleStrategy.callback [as _verify] (/usr/src/app/node_modules/@nestjs/passport/dist/passport/passport.strategy.js:17:45)
at /usr/src/app/node_modules/passport-oauth2/lib/strategy.js:205:24
이러한 에러가 뜹니다.
idToken을 어떻게 해독해야하는지 알수있을까요..?
혹시 실무에서 애플로그인 서비스를 구현해보셨다면 이방법말고 다른방법이라도 있다면 알려주시면 감사하겠습니다!
답변 1
1
2022. 02. 09. 18:55
아이고.. 답변이 늦었네요 ㅠㅠ