что провайдеров для логина больше одного?
Например у меня в проекте возможен логин через два провайдер. Гугл и фейсбук.
Я не особо понимаю как это должно работать если почта на фейсбук и гугл одна и та же.
1. Юзер логинится через фейсбук, я получаю его имя, эмейл, фотку. Вывожу ее, сохраняю данные юзера себе в бд, чтобы потом например получить список "избранного" этого юзер
2. Этот же юзер, выходит из аккаунт и логинится через гугл с такой же почтой которая былы привязана и к фейсбуку, в итоге я не сохраняю юзера в бд, так как такая почта уже существует
В итоге все дальнейшие манипуляции с аккаунтом юзера я провожу через почту, то есть идентифицирую его через почта.
Юзер нажал лайк, я делаю запрос в бд с почтой текущего юзера и записываю текущий пост как лайкнутый.
Все что я описал это корректная практика?Или как делают обычно?
ты про oauth ? если про него, то как бы задачу идентификации пользователя ты как бы внешнему сервису передаешь и логично отталкиваться от ИД этого юзера на данном сервисе а почта это вспомогательные данные. Она обычно у чела одна и таже на всех ресурсах
да, просто я юзаю next-auth, и провайдеры не отдают мне никакого айди. В том то и дело что почта одна, то есть логин с одной и той же почтой должен создавать разные аккаунт в бд?и будет разный список "избранного"?
ну допустим у него разные почты для разных провайдеров дальше что?
ну я так понял если почты разные, то аккаунты тоже разные.Если одинаковые то аккаунт как бы один не смотря на то что логин происходит через разные провайдеры. Окей, если я не прав, то где брать этот айди?Если ответ у каждого провайдера разный.
вообще такое надо лучше не в чате по фронту спрашивать вот тут спроси https://t.me/nodejs_ru
Обсуждают сегодня