Facebook과 Google OAuth를 새 창에서 열기?

Discourse를 iframe에서 호스팅하고 있어, x-frame 옵션으로 로드되는 것을 방지하기 때문에 Google OAuth가 제대로 작동하지 않습니다.

우리는 window.open을 사용해 FB와 Google의 “작은” OAuth URL을 새 창으로 열고, 창이 닫힌 후 window.opener를 올바르게 리디렉션하는 방법을 원합니다. 이것이 Discourse 설정으로 가능한가요? 아니면 location 리디렉션을 처리하는 코드 위치를 알려주시면 수정할 수 있을까요?

이것이 공식적으로 지원되는지는 의문입니다. Discourse는 단일 페이지 애플리케이션(SPA)이며, iframe 내에서 실행할 때의 동작에 대한 보장은 없습니다.

자세한 내용은 다음을 참고하세요:

보장을 요구하는 것이 아닙니다. window.location을 변경하는 JavaScript 코드가 어디 있는지 알려주시면 window.open으로 교체하겠습니다.

Discourse에는 실제로 iframe으로 표시할 수 있도록 허용하는 새로운 설정 변수가 있으며, 작동합니다. 예를 들어 https://qbix.com/ecosystem 또는 https://intercoin.app을 참고해 보세요.

오, 흥미롭네요. 맞습니다, 실제로 3년 전부터 있었던 기능입니다 :sweat_smile:. 다만 숨겨져 있다는 점에서 몇 가지 제한 사항이 있을 수 있습니다.

네! 그래서 제 주요 질문은 — 누군가가 Facebook 또는 Google로 연결을 클릭할 때 실행되는 코드가 어디에 있는지입니다. 이를 어떻게 오버라이드할 수 있을까요? 플러그인을 개발하지 않아도 되도록 사이트 테마의 JS에서 처리할 수 있을까요?

제가 원하는 것은 단순히 window.location.href = …를 window.open()으로 교체하는 것입니다.