팝업 ( window.open
)을 사용하여 React에서 OAuth를 구현하는 방법에 관심이 있습니다.
예를 들어
mysite.com
— 팝업을 여는 곳입니다.passport.mysite.com/oauth/authorize
— 팝업.
주요 질문은 window.open
(팝업)과 (팝업) 사이의 연결을 만드는 방법입니다. window.opener
도메인 간 보안으로 인해 window.opener가 null이므로 더 이상 사용할 수 없습니다.
⇑
window.opener
는 (보안상의 이유로) 다른 호스트로 이동 할 때마다 제거, 주위 방법이 없습니다. 가능한 경우 프레임에서 결제하는 것이 유일한 옵션입니다. 최상위 문서는 동일한 호스트에 있어야합니다.
계획:
가능한 해결책:
2019 년에 가장 권장되는 방법은 무엇입니까?
반작용에 대한 래퍼 - https://github.com/Ramshackle-Jamathon/react-oauth-popup
@KhanhTO, 네,에 대해 완전히 동의
—
Arthur
localStorage
하지만 같은 도메인에서만 작동하므로 내 상태에서는 작동하지 않습니다
OAuth를 마치면 자식 창이 다시 도메인으로 리디렉션되고 부모와 같은 도메인에 있습니다
—
Khanh TO
@KhanhTO, 흠, 이것은 좋은 생각입니다! 알았어 야
—
Arthur
window.opener
도메인으로 다시 리디렉션 한 후 브라우저가 복원되는 것이 더 나을 수도 있지만, 그렇지 않습니다
setInterval
localStorage의 대체물로 사용될 수 있음