Я создаю приложение node.js с подстановочными поддоменами.Каждый поддомен будет отдельной частью приложения, которая будет иметь отдельную аутентификацию для пользователей на основе поддоменов.
Например, допустим, у моего приложения будут субдомены abc.domain.com и xyz.domain.com и нижеуказанные пользователи
User1@gmail.com signs up for abc.domain.com
User2@yahoo.com signs up for xyz.domain.com
User3@msn.com signs up for both abc.domain.com and xyz.domain.com
Каждый пользователь должен иметь доступ только к поддомену, на который он подписан.Так что User1@gmail.com должен иметь возможность войти на abc.domain.com , но должен быть отклонен на xyz.domain.com
Обычно я получаю поддомен с помощью req.get ('host'), а затем извлекаю поддомен оттуда, но, насколько я знаю, passport.js не имеет параметра req.Можно ли как-нибудь получить имя субдомена текущего сайта, в который пытается войти пользователь?Ниже приведен код паспорта-фейсбук-токена, скопированный с https://github.com/drudge/passport-facebook-token
var FacebookTokenStrategy = require('passport-facebook-token');
passport.use(new FacebookTokenStrategy({
clientID: FACEBOOK_APP_ID,
clientSecret: FACEBOOK_APP_SECRET
}, function(accessToken, refreshToken, profile, done) {
// SQL statement will go here that will check whether a user is signed up for the subdomain they are logging into. It will also check if the user exists in the database
});
}
));