WCF 자체 호스팅 데이터 서비스 (OData, 그런데)를 만들고 기본 인증을 사용하여 사용자를 인증하고 있습니다. 그다지 어렵지 않았고 몇 가지 구성 단계가 필요했고 UserNamePasswordValidator와 IAuthorizationPolicy를 작성했습니다.CORS 및 기본 인증 지원을 사용하는 WCF 자체 호스팅 데이터 서비스
이제 CORS (Cross-Origin Resource Sharing)를 지원해야합니다. 나는 많은 구현을 시도했다. 어떤 것은 문서화되었고 (예를 들어, this), 다른 것들은 나 자신이 만들었다.
CORS 프리 플라이트 요청 (OPTIONS)에 '인증'헤더가없고 요청을 조작 할 수 없기 때문에 기본 인증을 사용하도록 설정하면 문제가입니다. 브라우저가 그 목적을 달성하지 못할 경우) 서버에서 요청을 가로 채거나 응답 할 수 없습니다. 나는 그것이 얼마나 멀리 가는지도 확인할 수 없다! 많은 Behaviors, Bindings, Managers 등을 구현하려고 시도했지만 "DataService <.OnStartProcessingRequest()"에 대한 요청조차받지 못했습니다. 내가 서버 측에서 기본 인증을 사용하지 않도록 설정하면
, 나는 CORS 프리 플라이트 요청을 잡아 결국 (A IDispatchMessageInspector과 BehaviorExtensionElement를 사용하여) 여기에 응답 할 수하지만,이 방법은 내가에 기본 인증을 구현해야 내 ... 젠장.
도와주세요. 둘 모두 구현하려면 어떻게해야합니까? 기본 인증이 단순히 401 Unauthorized에 응답하기 전에 CORS 프리 플라이트 요청을 가로 챌 수 있습니까?
미리 감사드립니다.
안녕 당신이 해결 했니? 이 주제에도 문제가 있습니다. – acostela