async authorize(credentials) {
let db = (await connectDB).db("forum");
let user = await db
.collection("user_cred")
.findOne({ email: credentials.email });
console.log(user);
console.log(credentials.email);
let question = await db
.collection("user-cred")
.findOne({ email: "lmgyu@" });
console.log(question);
if (!user) {
console.log("해당 이메일은 없음");
return null;
}
✓ Compiled in 211ms (588 modules)
null
lmgyu@
{
_id: new ObjectId("661a1d2a714eae8d49b516d9"),
name: 'lmg',
email: 'lmgyu@',
password: '$2b$10$SbhHGtyx28rdseoHgIJRNeS0DKexgL9cUY4mkcanLX8Ms0X0vN9Ym'
}
해당 이메일은 없음
코드와 터미널창의 콘솔로그인데요, 보시다시피
credentials.email 의 출력값인 lmgyu@를 그냥 db.collection.findOne({email: lmgyu@})여기에 넣어서 출력해보면
db에있는 document 값이 정확히 나옵니다.
그런데 findOne({email: credentials.email}) 로 찾은 user를 출력해보면 null 값이 나옵니다.
분명히 credentials.email을 출력한 값은 lmgyu@ 로 db에 있는 값과 일치하는데 말이죠.
이게 모순처럼 보이는데 제가 어떤 부분을 놓치고 있는 건지 모르겠습니다.