2009-10-19 3 views
0

Safari 4.0.3을 실행하는 Mac OS X Leopard 10.5.8을 사용하고 있습니다. 내 크로스 플랫폼 자바 애플 리케이션은 자체 내부 웹 서버와 함께 기본 웹 브라우저가 내장되어있다. 브라우저가 quicktime (mov, mp4, m4v 등)이 필요한 파일을 제공하려고 할 때마다 사용자 이름/암호 자격 증명 대화 상자가 표시됩니다. 나는 모든 요청이 통과하고 인증을받는 것을 볼 수있다. (최소한 html 파일은 인증을 받는다.) 예를 들어 mp4에 대한 요청을 보았을 때 결코 인증을받지 못했다. 마치 QuickTime이 자격 증명을 넘겨받지 않고 자체적으로 인증하려고하는 것처럼 말입니다.Safari 4의 QuickTime HTTP 기본 인증

내부적으로 이러한 자격 증명을 직접 전달하고 다른 모든 파일 형식은 기본 인증과 함께 잘 작동합니다. QuickTime 7.6.4와 똑같은 파일로 Windows에서이 응용 프로그램을 실행할 수도 있으며 예상대로 재생됩니다 (Windows는이 경우 임베디드 브라우저로 IE8을 실행 중입니다).

Safari 4에서 QuickTime 7.6.4 및 기본 인증과 관련하여 알려진 문제점이 있습니까? 나는 운이없는 온라인을 조금 검색했다.

답변

0

Safari 4에서는 문제가 아니지만 QuickTime 7.6.4에서는 문제가 발생합니다. 이 버전에 추가 된 "보안"조치로 인해 QuickTime 자체가 인증됩니다. 브라우저에서 요청한 html 파일과 mp4에 대한 요청은 내가 제공하는 자격 증명에 만족하지만 ... 자격 증명에 대한 다른 요청은 QuickTime에 의해 생성됩니다. 브라우저의 일부인 인증 수신기와 QuickTime에서 시작되는 이벤트로이 자격 증명을 채울 수 없습니다.

요청 헤더를 분석 할 때이 두 번째 자격 증명 집합에 대한 해결 방법을 찾았습니다. QuickTime이 내 앱에서 요청할 때 GET 헤더에있는 파일의 경로는 웹 서버에서 기본 경로를 알 수 있었던 상대 경로였습니다. 파일 메뉴의 "URL 열기"옵션을 사용하여 QuickTime에서 같은 요청을 한 경우 파일의 전체 절대 경로는 GET 헤더에있었습니다. 그런 다음이 GET 헤더를 확인할 수 있었고 절대 경로가있는 경우이 요청은 외부 소스에서 왔으며 자격 증명이 필요했습니다. 그렇지 않으면 내 앱에서 왔으며 기본 인증이 필요하지 않습니다.