Я использовал стратегию «паспорт-твиттер», и так получилось, что я не вижу окна «паспорт-логин» на стороне клиента, когда выполняю стратегию
Так вот что я делаю, изначально
class Auth extends ParentClass {
constructor(context, options) {
super()
this.app.get('/callback/:service', (req, res) =>
this.callbackEndpoint(req,res))
this.app.get('/', (req, res, next) => this.loginEndpoint(req, res, next))
}
async loginEndpoint (req, res, next) {
if (req.query.Twitter) {
console.log(`Inside Twitter Authentication`)
passport.authenticate('twitter', { scope : ['email'] })(req,res,next);
}
}
где в моем ParentClass я более или менее инициализирую вещи
class ParentClass {
this.use(corsMiddleware(options.CORS_URLS))
this.use(bodyParser.json())
this.use(session({
secret: 'keyboard cat',
resave: false,
saveUninitialized: true,
cookie: { secure: true }
}))
this.use(passport.initialize())
this.use((passport.session()))
}
use (middleware) {
this.app.use(middleware)
}
}
И, наконец, это моя паспортная стратегия
passport.use(new TwitterStrategy({
consumerKey: functions.config().twitterCredentials.apikey,
consumerSecret: functions.config().twitterCredentials.apiSecretKey,
callbackURL: redirect_uri,
passReqToCallback: true
}, async (req, accessToken, refreshToken, params, profile, done) => {
console.log(`logging from Passport Twitter ${req.workspace, req.accessToken}`)
done()
}))
Из первого кода, сниппета, я вижу журнал Inside Twitter Authentication
, но после этого ничего не происходит.
Чего я ожидал? Появляется окно для входа в твиттер, но ничего не появляется, и через некоторое время я получаю в консоли информацию: Execution took 569847 ms, finished with status: 'timeout'
Итак, вот мои вопросы:
1. Можем ли мы использовать паспорт и обычный поток данных с google-функциями? (просто прокомментируйте, если не ответите)
2. Если да, можем ли мы найти ошибку в приведенном выше коде.
Обновление примечания: Пока я гуглял по своей проблеме, я наткнулся на этот старый вопрос и понял, что хотя он был несколько похож, но описание предыдущего было очень расплывчатым. Позднее сегодня я задал похожий вопрос, но решил объединить его с этим.