Popup ( window.open
) kullanarak React OAuth uygulamak ile ilgileniyorum .
Örneğin:
mysite.com
- burası pop-up'ı açtığım yer.passport.mysite.com/oauth/authorize
- aniden belirmek.
Ana soru, window.open
(popup) ve window.opener
( nasıl bilindiği gibi, etki alanları arası güvenlik nedeniyle window.opener'ın boş olduğu için ) nasıl bağlantı oluşturulacağıdır , bu yüzden artık kullanamayız.
⇑
window.opener
farklı bir ana bilgisayara her gittiğinizde (güvenlik nedeniyle) kaldırılır, etrafında bir yol yoktur. Mümkünse tek seçenek ödemeyi bir çerçevede yapmak olmalıdır. Üstteki belgenin aynı ana bilgisayarda kalması gerekir.
Şema:
Olası çözümler:
- Burada
setInterval
açıklanan şekliyle açık bir pencereyi kontrol edin . Çapraz depolama kullanma (buna değmez).
2019'da en iyi önerilen yaklaşım nedir?
React için Sarıcı - https://github.com/Ramshackle-Jamathon/react-oauth-popup
localStorage
, ancak yalnızca aynı etki alanı için çalışıyor, bu yüzden benim durumumda çalışmıyor
window.opener
, alanımıza geri yönlendirdikten sonra geri yüklerse daha iyi olurdu , ancak durum böyle değil
setInterval
localStorage