#express #oauth-2.0 #socket.io #google-oauth #passport.js
#экспресс #oauth-2.0 #socket.io #google-oauth #passport.js
Вопрос:
Мы пытаемся пройти аутентификацию с помощью Express, используя passport.js с React на интерфейсе.
Мы следим за этим для справки.
https://codeburst.io/react-authentication-with-twitter-google-facebook-and-github-862d59583105
Здесь мы передаем идентификатор сокета в новое окно с помощью window.open и прослушиваем это событие ввода-вывода в первом окне.
openPopup() {
const { provider, socket } = this.props
const width = 600, height = 600
const left = (window.innerWidth / 2) - (width / 2)
const top = (window.innerHeight / 2) - (height / 2)
const url = `${API_URL}/${provider}?socketId=${socket.id}`
return window.open(url, '',
`toolbar=no, location=no, directories=no, status=no, menubar=no,
scrollbars=no, resizable=no, copyhistory=no, width=${width},
height=${height}, top=${top}, left=${left}`
)
}
Это отлично работает в настольных и мобильных браузерах. Но он не работает в браузере приложений как window.open не открывает новое окно.
Как мы используем сокет.ввод-вывод в таком случае либо через всплывающее окно, либо через перенаправление?. Пожалуйста, помогите застрял на этом уже довольно давно.