Chrome에서 JavaScript의 창 폐쇄 제한: 제한적인 보안 조치
JavaScript는 window.close() 및 self.close()를 제공합니다. 창을 닫는 방법을 사용하는 경우 이러한 도구는 Chrome에서 장애물에 부딪혀 스크립트를 사용하여 창을 닫는 것이 항상 가능한 것은 아닙니다. 간단합니다.
스크립트 기반 폐쇄 제어
보안 문제로 인해 Chrome에서는 JavaScript의 창 닫기 기능을 제한하는 정책을 구현했습니다. 폐쇄를 호출하는 동일한 스크립트에 의해 생성된 경우에만 창 닫기를 허용합니다. 이 제한은 악성 스크립트가 창을 임의로 종료하고 사용자 경험을 방해하는 것을 방지합니다.
Firefox 준수
Firefox는 스크립트에서 창을 닫으려고 시도할 때에도 이 제한을 엄격히 준수합니다. 오류가 발생했습니다. 이와 대조적으로 Chrome은 사용자 스크립트에 대한 예외를 허용하지만 확인 메시지는 표시하지 않습니다.
해키 해결 방법
Chrome의 자체 리디렉션 익스플로잇은 한때 창 닫기를 허용했지만 이 방법은 대부분 차단됨. TamperMonkey와 관련된 한 가지 잠재적인 해결 방법은 스크립트 헤더에 @grant window.close를 사용하는 것입니다. 그러나 이것이 모든 경우에 적용되는 것은 아니며 검색 기록이 없는 탭을 새로 열어야 합니다.
보안에 미치는 영향 및 장기적 해결책
다음으로 인한 보안 위험 window.close를 적절하게 제한하지 않으면 일반적인 사용에 부적합합니다. 권장되는 해결 방법은 창을 안정적으로 닫을 수 있는 Chrome 확장 프로그램이나 Firefox 추가 기능을 개발하는 것입니다. Greasemonkey와 Tampermonkey는 잠재적으로 API 확장을 통해 이 기능을 제공할 수 있습니다.
최후의 수단으로 개인 스크립트의 경우 Firefox에서 Allow_scripts_to_close_windows 설정을 비활성화하면 창 닫기가 활성화될 수 있습니다. 하지만 이는 브라우저 보안을 약화시키므로 주의가 필요합니다.
위 내용은 JavaScript가 Chrome에서 항상 Windows를 닫을 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!