2017-12-01 3 views
0

현재 iframe 문제를 해결하고 있지만 문제를 찾을 수 없습니다. 내 페이지에 iframe이 있고이 iframe은 다른 페이지를 가리키고 있지만 같은 도메인에 있습니다. 내 프레임 워크 및 angular 라우터를 사용하여 angularJS를 사용합니다.FireFox는 iframe을 차단하고 표시되지 않습니다.이 iframe은 동일한 도메인 주소입니다.

내 페이지 링크는 다음과 같이이다 : https://xxxx:8443/ctx/#/mypage iframe이 SRC =/CTX/#/iframepage가

이는 크롬과 IE 가장자리에서 잘 작동하지만. 하지만 iframe은 Firefox에서 어떤 리소스도로드하지 않습니다. 요소를 검사하여이 iframe 아래 빈 페이지 만 찾았습니다.

그러나 iframe src를 google.com과 같이 변경하면 iframe이 작동합니다.

그런데 저는 자체 서명 된 인증서를 사용하여 https 서비스를 테스트했습니다. 이 인증서는 신뢰할 수 없습니다.

iframe이 작동하지 않는 이유를 모르겠지만 누구도 도와 줄 수 있습니까?

답변

0

#은 URI의 예약 된 문자입니다.

%23으로 인코딩해야합니다.

크롬과 가장자리 그들은 당신은 iframe의 SRC를 고려해야한다, 잘못 "/ctx/index.html#%2Fiframepage", index.html는 서버가 fragment identifier으로 간주 "%2Fiframepage"로, 기본 페이지 이름으로 전송 뭐든 있다.

그래서 최종 src

"/ctx/%23/iframepage" 
+0

안녕하세요, 당신의 팁 주셔서 감사합니다 것입니다. 그러나 불행히도, 그것은 작동하지 않습니다. '#'을 % 23 (으)로 변경하면 서버가 파일을 찾을 수 없음 오류로 응답합니다. 이 #에서 % 23으로 변경하면 서버가이 요청을 파일 요청으로 간주합니까? – user1242158

+0

@ user1242158 나는 그것을 얻을 확신이 없습니다 ... 디렉토리 경로가 * ctx> #> [mypage, iframepage] *입니까? 이 iframe의 src를 어떻게 설정합니까? 그런데 두 페이지가 모두 같은 폴더에 있으면 상대 경로 만 사용할 수 있습니다 :'