await Posts.increment("like", { where: { postId }}, { transaction: t });
로 해주었더니 like POST를 호출할 때 thunderClient에서 계속 spinning 상태로 머물렀다가 정상처리 되지 않았다.increment
메소드의 인자로 where
절과 transaction
객체를 같이 넘기고 있는데, 이는 transaction 객체를 두 번째 인자로 넘겨주어야 하는데, 3번째 인자로 넘겨주고 있기 때문이었다. 따라서, 다음과 같이 작성해야 한다. await Posts.increment("like", { where: { postId }, transaction: t });
get <refreshToken>
을 사용해서 userId를 반환해보았는데 set
은 잘 적용이 되었었다. get
에서 클라우드에 저장되어 있는 값을 가져오는 곳에서 오류가 생겼었는데, 그 이유는 비동기 함수를 잘못 사용하였기 떄문이었다. Redis connection을 초기화해줄 때 {legacyMode: true}
를 통해 ver3.인 콜백 함수를 사용하게끔 설정을 해주었고, 따라서 프로미스 함수를 사용하려면 따로 redisClient.v4.get()
을 해주어야 했던 것이다. v4
표시를 하지 않아서 Redis에 접근하기 전에 get()으로 값을 가져오려고 해서 undefined가 출력되었다. v4
를 추가해준 이후부터는 userId 값도 잘 가져오고 재발급된 access token으로 잘 접속할 수 있었다.if (!isAccessTokenValid) {
const accessTokenId = await redisClient.getRefreshToken(authRefreshToken);
if (!accessTokenId)
return res.status(419).json({
message: "Refresh Token의 정보가 서버에 존재하지 않습니다.",
});
newAccessToken = createAccessToken(accessTokenId);
res.cookie("accessToken", `Bearer ${newAccessToken}`);
}
const { userId } = getAccessTokenPayload(newAccessToken ?? authAccessToken);
res.clearCookie('accessToken');